我是 docker 新手,我正在使用 Compose 文件从 Dockerfile 构建并运行图像,我有以下 yml 文件
version: '2'
services:
multichain:
build: ./
image: ubuntu:15.04
read_only: false
volumes:
- .:/data:rw
working_dir: /data
#entrypoint: node server/index.js
docker-compose up --build
生产
REPOSITORY TAG IMAGE ID CREATED SIZE
<none> <none> 5c5580fb6ce4 2 minutes ago 175.1 MB
ubuntu 15.04 d1b55fd07600 10 months ago 131.3 MB
这是预期的,但是我可以在docker-compose构建期间用某些东西替换“”吗?
另外,当我再次运行该文件时,它会创建另一个文件:我不能只替换已经存在的内容吗?
答案1
Docker 不会替换镜像,您必须运行另一个命令来删除旧镜像。根据https://docs.docker.com/compose/compose-file/#/build,通过在“build”后添加“image”,您指示docker将您的新构建标记为ubuntu:15.04
。
您不想在撰写文件中指定基础映像,DockerfileFROM
会执行此操作。
我认为你想将ubuntu:15.04
你的例子改成类似myapp:latest