मेरे पास एक नोडजेएस प्रोजेक्ट है जो मोंगोडीबी का उपयोग करता है। मैं इस सेवा को डॉकर कंटेनर में चलाने के लिए चाहता हूं, लेकिन कई उदाहरणों के बावजूद मैंने अपनी शिक्षा को आधारित किया है, यह काम नहीं करेगा। यहाँसीखना नोडजेएस और मोंगोडीबी डॉकर लिखें
FROM node:9-alpine
WORKDIR /usr/src/app
COPY package.json /usr/src/app
RUN npm install
RUN npm install pm2 -g
COPY . /usr/src/app
EXPOSE 3000
CMD ["pm2-docker", "start", "process.json"]
और मेरे /heimdall_jwt/docker-compose.yml
version: '2'
# Define the services/containers to be run
services:
myapp: #name of your service
build: ./ # specify the directory of the Dockerfile
ports:
- "3000:3000" #specify ports forwarding
links:
- database # link this service to the database service
volumes:
- .:/usr/src/app
depends_on:
- database
database: # name of the service
image: mongo # specify image to build container from
मैं के माध्यम से चल रहा है की कोशिश की है:
यहाँ मेरी /heimdall_jwt/Dockerfile है $ डोकर - अपरिवर्तित करें - बिल्ड जिसके परिणामस्वरूप मोंगो निर्माण और शुरू हो रहा है। यहाँ गाढ़ा उत्पादन होता है:
Building myapp
Step 1/8 : FROM node:9-alpine
...
Step 4/8 : RUN npm install
---> Using cache
---> befb91b1324c
...
Removing intermediate container 945eb0ad40d5
Successfully built b500f7ec9b89
Successfully tagged heimdalljwt_myapp:latest
Creating heimdalljwt_database_1 ...
Creating heimdalljwt_database_1 ... done
Creating heimdalljwt_myapp_1 ...
Creating heimdalljwt_myapp_1 ... done
Attaching to heimdalljwt_database_1, heimdalljwt_myapp_1
database_1 | 2017-11-25T21:15:39.001+0000 I INDEX [initandlisten] building index using bulk method; build may temporarily use up to 500 megabytes of RAM
database_1 | 2017-11-25T21:15:39.002+0000 I INDEX [initandlisten] build index done. scanned 0 total records. 0 secs
database_1 | 2017-11-25T21:15:39.003+0000 I COMMAND [initandlisten] setting featureCompatibilityVersion to 3.4
database_1 | 2017-11-25T21:15:39.005+0000 I NETWORK [thread1] waiting for connections on port 27017
myapp_1 | 0|heimdall | Error: Cannot find module 'bcryptjs'
myapp_1 | 0|heimdall | at Function.Module._resolveFilename (module.js:542:15)
myapp_1 | 0|heimdall | at Function.Module._load (module.js:472:25)
myapp_1 | 0|heimdall | at Module.require (module.js:585:17)
myapp_1 | 0|heimdall | at require (internal/module.js:11:18)
myapp_1 | 0|heimdall | at Object.<anonymous> (/usr/src/app/user/User.js:2:14)
myapp_1 | 0|heimdall | at Module._compile (module.js:641:30)
myapp_1 | 0|heimdall | at Object.Module._extensions..js (module.js:652:10)
myapp_1 | 0|heimdall | at Module.load (module.js:560:32)
myapp_1 | 0|heimdall | at tryModuleLoad (module.js:503:12)
myapp_1 | 0|heimdall | at Function.Module._load (module.js:495:3)
myapp_1 | 0|heimdall | at Module.require (module.js:585:17)
myapp_1 | 0|heimdall | at require (internal/module.js:11:18)
myapp_1 | 0|heimdall | at Object.<anonymous> (/usr/src/app/user/UserController.js:12:12)
myapp_1 | 0|heimdall | at Module._compile (module.js:641:30)
myapp_1 | 0|heimdall | at Object.Module._extensions..js (module.js:652:10)
myapp_1 | 0|heimdall | at Module.load (module.js:560:32)
myapp_1 | PM2 | App name:heimdall_app id:0 disconnected
मैं अनिश्चित यहाँ क्या चल रहा है, लेकिन मैं अनुमान लगा रहा हूँ कि निर्भरता या तो स्थापित नहीं किया जा रहा है, या कार्यशील निर्देशिका में कॉपी किया जा रहा है। कैसे
UPDATED मूल पोस्टिंग से संशोधित रूप में मैं अभी भी इस काम करने के लिए प्राप्त करने के लिए संघर्ष कर रहा हूँ।
आप https://stackoverflow.com/questions/37454548/docker-compose- में इसी तरह के मुद्दे पा सकते हैं नो-इमेज –
धन्यवाद, इससे थोड़ा सा समय बढ़ने में मदद मिली, लेकिन मैं अभी भी इस चीज़ को चलाने में असमर्थ हूं। मैंने अपने अवलोकन के साथ पोस्ट अपडेट किया। – sonoerin
जो कि अनुपलब्ध संकुलों के कारण है, आपको heimdall_jwt dockerfile में परिवर्तन करना होगा, npm इंस्टॉल करने से पहले सभी आवश्यक संकुल अधिष्ठापित करें –