我正在尝试建立一个良好的工作流程来使用 docker 和 nodejs
我认为我有一个很好的基础,但是即使我有一个定义的卷,我也无法将容器内生成的 package-lock.json 获取到我的源代码中
这是我的 Dockerfile:
FROM node
WORKDIR /app
COPY ./package.json ./
RUN npm install
RUN npm install -g nodemon
COPY ./src ./src
EXPOSE 3000
CMD ["nodemon", "./src/index.js"]
这是我的 docker-compose.yml:
version: '3'
services:
web:
build: ./app
command: nodemon ./src/index.js
ports:
- '8080:3000'
volumes:
- ./app/src:/app/src
- /app/node_modules/
links:
- mysql
mysql:
image: mysql:5.6
environment:
- MYSQL_DATABASE=dev
- MYSQL_USER=dev
- MYSQL_PASSWORD=dev
- MYSQL_ROOT_PASSWORD=dev
ports:
- '3306:3306'
为了将 package-lock.json 提交到我的版本控制工具,每次我通过npm install
容器内安装新包并生成/更新 package-lock.json 时,我想继续生成生成包的源代码 - lock.json 文件