首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Dockerfile:我如何反映正确的路径?

Dockerfile:我如何反映正确的路径?
EN

Stack Overflow用户
提问于 2022-08-16 18:50:38
回答 1查看 46关注 0票数 0

我一直有一个问题,我在哪里得到了错误:Cannot find module '/mfa/main.js'

但是,main.js位于/mfa/dist/apps/api的内部

这是我拥有的Dockerfile的最新配置:

代码语言:javascript
运行
复制
FROM node:14
WORKDIR /mfa/

COPY package.json .
COPY decorate-angular-cli.js .
COPY yarn.lock .

# Configure NPM with the group access token
ENV GROUP_NPM_TOKEN="asdfghjkiuy"
RUN npm config set @my-web:registry http://git.hoosiers.com/api/v4/packages/npm
RUN npm config set //git.hoosiers.com/api/v4/packages/npm/:_authToken=${GROUP_NPM_TOKEN}
RUN npm config set //git.hoosiers.com/api/v4/packages/projects/:_authToken=${GROUP_NPM_TOKEN}

RUN yarn add typescript

RUN yarn install --frozen-lockfile
COPY ./dist .

CMD ["node", "apps/api/main.js"]

所以现在docker run <image-hash>运行得很好,但是当我尝试docker-compose up时,我再次得到了Cannot find module '/mfa/main.js'

这是我的docker-compose.yml文件:

代码语言:javascript
运行
复制
version: '3.9'
services:
  web-app:
    build:
      context: .
      dockerfile: mostly-failed-apps.Dockerfile
    ports:
      - "3000:3000"
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-08-16 18:59:37

您已经将WORKDIR定义为/mfa,并在api/api/ main.js中执行main.js

对于拷贝来说,写/mfa/您只需写点(.)并不是必须的。因为你的世界

代码语言:javascript
运行
复制
`
FROM node:14
# Go on /mfa if is dosen't exist WORKDIR create it and go in
WORKDIR /mfa/

# Copy of package.json where we are so we are with the dot so in /mfa/ it's the same for all copy
COPY package.json .
COPY decorate-angular-cli.js .
COPY yarn.lock .

# Configure NPM with the group access token
ENV GROUP_NPM_TOKEN="token"
RUN npm config set @my-web:registry http://git.hoosiers.com/api/v4/packages/npm
RUN npm config set //git.hoosiers.com/api/v4/packages/npm/:_authToken=${GROUP_NPM_TOKEN}
RUN npm config set //git.hoosiers.com/api/v4/packages/projects/:_authToken=${GROUP_NPM_TOKEN}

RUN yarn add typescript

RUN yarn install --frozen-lockfile
COPY ./dist .

# You have create your docker with /mfa/ so you need to excute it in /mfa/
CMD ["node", "/mfa/dist/apps/api/main.js"]
`
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73378951

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档