首页 > 解决方案 > 使用 docker 为 restfull 节点 api 构建节点映像

问题描述

我有一个用 docker-compose 分发的 node.js 制作的 restfull api,但是当我docker-compose up --build重做构建时,我在控制台中收到以下错误。

我已经删除了 docker 容器,使用docker system prune. 我已经docker-compose up再次运行,但没有办法让它工作。

我还把它上传到了云端,以测试它是否是我的连接故障而不是。它也不适用于服务器。

npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/pug-filters-a00348ec/package.json'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/pug-filters-a00348ec/CHANGELOG.md'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/pug-filters-a00348ec/index.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/pug-filters-a00348ec/LICENSE'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/pug-filters-a00348ec/README.md'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-config-airbnb-341b5cdb/test/.eslintrc'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/express-404d3ef9/lib/application.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-config-airbnb-341b5cdb/test/requires.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-config-airbnb-341b5cdb/test/test-base.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-config-airbnb-341b5cdb/test/test-react-order.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/@types/babel-types-5f57d71c/package.json'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/axios-5a34788b/dist/axios.map'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/aws-sdk-cfe27d67/lib/api_loader.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-plugin-react-4eb6ccf9/lib/util/docsUrl.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/htmlnano-b098c689/lib/presets/safe.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/nodemon-8e777da8/lib/config/index.js'
npm WARN tar ENOENT: no such file or directory, lstat '/usr/src/app/node_modules/.staging/aws-sdk-cfe27d67/lib/model'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-plugin-react-4eb6ccf9/lib/util/error.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/yargs-6f4914e2/lib/yerror.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isAfter.js'
npm WARN tar ENOENT: no such file or directory, lstat '/usr/src/app/node_modules/.staging/aws-sdk-cfe27d67/lib/services'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/moment-593114f6/package.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isAlpha.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/moment-593114f6/README.md'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isAlphanumeric.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isAscii.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/nodemailer-961441cd/lib/fetch/index.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isBase32.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-d628385d/LICENSE'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-plugin-react-4eb6ccf9/lib/util/getTokenBeforeClosingBracket.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-d628385d/README.md'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isBase64.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-plugin-import-ff8fc887/lib/rules/exports-last.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isBefore.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/nodemon-8e777da8/lib/rules/index.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/nodemon-8e777da8/lib/utils/index.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/mongoose-2773343b/index.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-plugin-import-ff8fc887/lib/rules/extensions.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isBIC.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/mongoose-2773343b/LICENSE.md'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/nodemon-8e777da8/lib/config/load.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/mongoose-2773343b/README.md'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isBoolean.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/rules/prefer-global/buffer.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/rules/prefer-global/console.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/nodemon-8e777da8/lib/utils/log.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/mongoose-2773343b/SECURITY.md'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isByteLength.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/rules/prefer-global/process.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/mongoose-2773343b/webpack.base.config.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/@babel/parser-70b45b0e/lib/plugins/estree.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/rules/prefer-global/text-decoder.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isCreditCard.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/rules/prefer-global/text-encoder.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/mongoose-2773343b/webpack.config.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/rules/prefer-global/url-search-params.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isCurrency.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/nodemon-8e777da8/lib/utils/merge.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/rules/prefer-global/url.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isDataURI.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/rules/process-exit-as-throw.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/rules/shebang.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isDecimal.js'
npm WARN tar ENOENT: no such file or directory, lstat '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/util'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/@babel/parser-70b45b0e/lib/plugins/flow.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isDivisibleBy.js'
npm WARN tar ENOENT: no such file or directory, lstat '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/util'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isEmail.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/nodemon-8e777da8/lib/cli/parse.js'
npm WARN tar ENOENT: no such file or directory, lstat '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/util'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/nodemon-8e777da8/lib/rules/parse.js'
npm WARN tar ENOENT: no such file or directory, lstat '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/util'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isEmpty.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/fsevents-aaa01d6e/node_modules/delegates/License'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/fsevents-aaa01d6e/node_modules/detect-libc/LICENSE'
npm WARN tar ENOENT: no such file or directory, lstat '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/util'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isFloat.js'
npm WARN tar ENOENT: no such file or directory, lstat '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/util'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isFQDN.js'
npm WARN tar ENOENT: no such file or directory, lstat '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/util'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isFullWidth.js'
npm WARN tar ENOENT: no such file or directory, lstat '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/util'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isHalfWidth.js'
npm WARN tar ENOENT: no such file or directory, lstat '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/util'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isHash.js'
npm WARN tar ENOENT: no such file or directory, lstat '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/util'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isHexadecimal.js'
npm WARN tar ENOENT: no such file or directory, lstat '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/util'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isHexColor.js'
npm WARN tar ENOENT: no such file or directory, lstat '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/util'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isIdentityCard.js'
npm WARN tar ENOENT: no such file or directory, lstat '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/util'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isIn.js'
npm WARN tar ENOENT: no such file or directory, lstat '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/util'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isInt.js'
npm WARN tar ENOENT: no such file or directory, lstat '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/util'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isIP.js'
npm WARN tar ENOENT: no such file or directory, lstat '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/util'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isIPRange.js'
npm WARN tar ENOENT: no such file or directory, lstat '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/util'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isISBN.js'
npm WARN tar ENOENT: no such file or directory, lstat '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/util'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isISIN.js'
npm WARN tar ENOENT: no such file or directory, lstat '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/util'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isISO31661Alpha2.js'
npm WARN tar ENOENT: no such file or directory, lstat '/usr/src/app/node_modules/.staging/eslint-plugin-node-84027b73/lib/util'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isISO31661Alpha3.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isISO8601.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isISRC.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isISSN.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isJSON.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isJWT.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isLatLong.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isLength.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/nodemailer-961441cd/lib/smtp-connection/index.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isLowercase.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-plugin-react-4eb6ccf9/lib/util/jsx.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-plugin-react-4eb6ccf9/lib/util/linkComponents.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isMACAddress.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-plugin-react-4eb6ccf9/lib/util/log.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-plugin-react-4eb6ccf9/lib/util/makeNoMethodSetStateRule.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isMagnetURI.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isMD5.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isMimeType.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/validator-934860a0/es/lib/isMobilePhone.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-plugin-react-4eb6ccf9/lib/util/pragma.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-plugin-react-4eb6ccf9/lib/util/props.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/eslint-plugin-react-4eb6ccf9/lib/util/propTypes.js'
npm WARN tar ENOENT: no such file or directory, open '/usr/src/app/node_modules/.staging/aws-sdk-cfe27d67/dist/aws-sdk.js'

npm ERR! code E404
npm ERR! 404 Not Found - GET https://registry.npmjs.org/@parcel/helpers/-/utils-1.11.0.tgz
npm ERR! 404
npm ERR! 404  '@parcel/utils@1.11.0' is not in the npm registry.
npm ERR! 404 You should bug the author to publish it (or use the name yourself!)
npm ERR! 404 It was specified as a dependency of 'app'
npm ERR! 404
npm ERR! 404 Note that you can also install from a
npm ERR! 404 tarball, folder, http url, or git url.

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2020-07-05T09_20_45_866Z-debug.log

这是我的码头文件

FROM node:12-alpine

WORKDIR /usr/src/app

COPY package*.json ./

RUN npm install

COPY . .

ENV PORT=4300

EXPOSE 4300
CMD [ "node", "server.js" ]

标签: node.jsdockerdocker-compose

解决方案


推荐阅读