Cod*_*erX 6 docker dockerfile docker-compose
我有一个docker-compose.yml包含两个服务(均基于 DockerFile)的文件。我已经构建了一次图像(使用命令docker-compose build:),一旦我运行这个命令(docker-compose up),它们就会启动并运行。
我不得不更改用于其中一项服务的源代码,但是,当我重建图像 ( docker-compose build) 时,一旦我运行服务 ( docker-compose up)就不会反映代码更改。
docker-compose.yml
version: '2'
services:
serviceOne:
build:
context: ./ServerOne
args:
PORT: 4000
ports:
- "4000:4000"
env_file:
- ./ServerOne/.env
environment:
- PORT=4000
serviceTwo:
build:
context: ./serviceTwo
args:
PORT: 3000
ports:
- "3000:3000"
env_file:
- ./serviceTwo/.env
environment:
- PORT=3000
- serviceOne_URL=http://serviceOne:4000/
depends_on:
- serviceOne
Run Code Online (Sandbox Code Playgroud)
serviceOne/DockerFile
FROM node:8.10.0
RUN mkdir -p /app
WORKDIR /app
ADD package.json package-lock.json /app/
RUN npm install
COPY . /app/
RUN npm build
EXPOSE ${ACC_PORT}
CMD [ "npm", "start" ]
Run Code Online (Sandbox Code Playgroud)
serviceTwo/DockerFile
FROM node:8.10.0
RUN mkdir -p /app
WORKDIR /app
ADD package.json package-lock.json /app/
RUN npm install
COPY . /app/
RUN npm build
EXPOSE ${ACC_PORT}
CMD [ "npm", "start" ]
Run Code Online (Sandbox Code Playgroud)
以下是docker-compose第二次运行时的输出。
这是在运行COPY和npm build命令时再次使用缓存图像的一些方法。
如何更改DockerFile或docker -compose文件以便部署新的源代码?
| 归档时间: |
|
| 查看次数: |
2713 次 |
| 最近记录: |