Docker没有';t在Dockerfile上运行所有命令
我是docker的初学者,我在Youtube上学习了本教程 我已经在我的应用程序文件夹中创建了dockerfileDocker没有';t在Dockerfile上运行所有命令,docker,Docker,我是docker的初学者,我在Youtube上学习了本教程 我已经在我的应用程序文件夹中创建了dockerfile FROM node:13 WORKDIR / COPY package*.json ./ RUN npm install #ngelakuin run di shell (ini buat di shell) COPY . . #copy semua file di dalam directory ini ENV PORT=3000 #menyesuaikan dima
FROM node:13
WORKDIR /
COPY package*.json ./
RUN npm install
#ngelakuin run di shell (ini buat di shell)
COPY . .
#copy semua file di dalam directory ini
ENV PORT=3000
#menyesuaikan dimana port aplikasi berjalan, port = 3000
EXPOSE 3000
#expose port public
CMD ["npm", "start"]
#ngelakuin run (cmd)
教程说,当我们执行docker build
(直到cmd命令)时,它应该运行8个命令。但在我的情况下,只做5次(直到复制..
)
这是docker构建时终端所做的
[+] Building 12.7s (9/9) FINISHED
=> [internal] load .dockerignore 0.0s
=> => transferring context: 34B 0.0s
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 382B 0.0s
=> [internal] load metadata for docker.io/library/node:13 2.7s
=> => transferring context: 57.03kB 0.2s
=> [2/5] COPY package*.json ./ 0.0s
=> [3/5] RUN npm install 9.3s
=> [4/5] COPY . . 0.1s
=> exporting to image 0.2s
=> => exporting layers 0.2s
=> => writing image sha256:93fde5bd0e36d551a0545e1ae6d69b7691d36361b2f75c6eafc2c48cd8ed54d1 0.0s
=> => naming to docker.io/hollyyph/docker-demo-holly:1.0 0.0s
我已经检查过是否可以运行该映像,但它无法运行。变成这样
\docker-demo-holly > docker run sha256:93fde5bd0e36d551a0545e1ae6d69b7691d36361b2f75c6eafc2c48cd8ed54d1
> app-service-hello-world@0.0.1 start /
> node index.js
internal/modules/cjs/loader.js:965
throw err;
^
Error: Cannot find module 'express'
Require stack:
- /index.js
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:962:15)
at Function.Module._load (internal/modules/cjs/loader.js:838:27)
at Module.require (internal/modules/cjs/loader.js:1022:19)
at require (internal/modules/cjs/helpers.js:72:18)
at Object.<anonymous> (/index.js:1:17)
at Module._compile (internal/modules/cjs/loader.js:1118:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1138:10)
at Module.load (internal/modules/cjs/loader.js:982:32)
at Function.Module._load (internal/modules/cjs/loader.js:875:14)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12) {
code: 'MODULE_NOT_FOUND',
requireStack: [ '/index.js' ]
}
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! app-service-hello-world@0.0.1 start: `node index.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the app-service-hello-world@0.0.1 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2020-11-01T19_10_00_543Z-debug.log
\docker demo holly>docker run sha256:93fde5bd0e36d551a0545e1ae6d69b7691d36361b2f75c6eafc2c48cd8ed54d1
>应用服务你好-world@0.0.1开始/
>node index.js
内部/modules/cjs/loader.js:965
犯错误;
^
错误:找不到模块“express”
需要堆栈:
-/index.js
位于Function.Module.\u resolveFilename(internal/modules/cjs/loader.js:962:15)
at Function.Module._load(内部/modules/cjs/loader.js:838:27)
at Module.require(内部/modules/cjs/loader.js:1022:19)
根据需要(内部/modules/cjs/helpers.js:72:18)
反对。(/index.js:1:17)
at模块编译(内部/modules/cjs/loader.js:1118:30)
在Object.Module._extensions..js(internal/modules/cjs/loader.js:1138:10)
at Module.load(内部/modules/cjs/loader.js:982:32)
at Function.Module._load(内部/modules/cjs/loader.js:875:14)
在Function.executeUserEntryPoint[作为runMain](internal/modules/run_main.js:71:12){
代码:“未找到模块”,
requireStack:['/index.js']
}
npm错误!代码失效循环
npm错误!错误1
npm错误!应用服务你好-world@0.0.1start:`node index.js`
npm错误!退出状态1
npm错误!
npm错误!在应用程序服务中失败-world@0.0.1开始脚本。
npm错误!这可能不是npm的问题。上面可能还有其他日志输出。
npm错误!此运行的完整日志可在以下位置找到:
npm错误/root/.npm/_logs/2020-11-01T19_10_00_543Z-debug.log
查找“express”似乎有问题
检查express是否作为依赖项添加到package.json中。这并不能回答问题。一旦你有足够的钱,你将能够;相反-