首页 > 解决方案 > 更改代码时避免重新启动 docker

问题描述

我是第一次使用 docker,所以这对你来说可能是一个愚蠢的问题。我配置:dockerfiledocker-compose。每次我更改代码(nodejs 代码)时,我都需要运行以下命令:

docker-compose up --build

如果我想查看更改,我想知道是否有办法更新我的代码,而不必每次都运行该命令。谢谢。

Dockerfile:

FROM node:latest
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
COPY package.json /usr/src/app/
RUN npm install
COPY . /usr/src/app
ENV NODE_PATH=/app/node_modules
EXPOSE 1337
CMD ["npm", "start"]

码头工人撰写:

version: '3'

services:

  node_api:
    container_name: app
    restart: always
    build: .
    ports:
      - "1337:1337"
    links:
      - mongo

  mongo:
    container_name: mongo
    image: mongo:latest
    environment:
      - MONGO_INITDB_ROOT_USERNAME=admin
      - MONGO_INITDB_ROOT_PASSWORD=admin
      - MONGO_INITDB_DATABASE=test
    ports:
      - "27017:27017"
    restart: always

标签: node.jsdockerdocker-compose

解决方案


您可以在容器中挂载包含源代码的目录,并使用诸如nodemon 之类的工具,该工具将监视文件并在更改时重新启动应用程序。

有关详细信息,请参阅文章Docker 技巧:使用 Nodemon进行开发。


推荐阅读