gpt4 book ai didi

node.js - 访问docker容器外的node模块数据量

转载 作者:行者123 更新时间:2023-12-02 10:43:57 26 4
gpt4 key购买 nike

我为 node.js Web 服务设置了 docker,它为 Node 模块创建数据卷,如下所示:

  volumes:
- ./service:/usr/src/service
- /usr/src/service/node_modules

数据量的解决方案效果很好。但使用数据卷时,node_modules我的主机(不是容器)中无法访问或可见,这会产生其他限制。例如:我无法在 web-storm 中运行测试,因为它们期望 node_modules 存在。

除了使用数据卷挂载 Node 模块并允许在主机上访问它们之外,还有其他解决方案吗?

docker 文件如下所示:

FROM node:6.3.1-slim

ARG NPM_TOKEN
ARG service
ENV NODE_ENV development

RUN apt-get update && apt-get -y install build-essential git-core python-dev vim

# use nodemon for development
RUN npm install --global nodemon

COPY .npmrc /root/.npmrc

RUN mkdir -p /usr/src/$service
RUN mkdir -p /modules/$service/
COPY sources/$service/package.json /modules/$service/package.json
RUN cd /modules/$service/ && npm install && rm -f /root/.npmrc && mv /modules/$service/node_modules /usr/src/$service/node_modules

WORKDIR /usr/src/$service
COPY sources/$service /usr/src/$service

ENV service=${service}

COPY start_services.sh /root/start_services.sh
COPY .env /root/.env
COPY services.sh /root/services.sh

RUN ["chmod", "+x", "/root/start_services.sh"]
RUN ["chmod", "+x", "/root/services.sh"]
CMD /root/start_services.sh

最佳答案

指定node_modules如下:

volumes:
- .:/usr/src/service/
- /usr/src/service/node_modules

关于node.js - 访问docker容器外的node模块数据量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44947346/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com