Docker compose 如何使用每个容器创建多个图像
我正在尝试用一个容器创建多个图像 docker-compose.ymlDocker compose 如何使用每个容器创建多个图像,docker-compose,Docker Compose,我正在尝试用一个容器创建多个图像 docker-compose.yml version: '3' services: consumer: image: consumer build: context: . dockerfile: ./docker_files/consumer command: python3 asynchronous_consumer.py environment: - CELERYSERVER -
version: '3'
services:
consumer:
image: consumer
build:
context: .
dockerfile: ./docker_files/consumer
command: python3 asynchronous_consumer.py
environment:
- CELERYSERVER
- CELERYUSER
- CELERYPASS
- DATABASESERVER
- DATABASEUSER
- DATABASEPASS
- APISERVER
volumes:
- /var/log:/var/log
- /home/uadmin/msw/queuemgr/mongodb_cache:/usr/src/app/mongodb_cache
container_name: consumer
publisher:
image: publisher
build:
context: .
dockerfile: ./docker_files/publisher
command: python3 publisher.py
environment:
- CELERYSERVER
- CELERYUSER
- CELERYPASS
- DATABASESERVER
- DATABASEUSER
- DATABASEPASS
- APISERVER
volumes:
- /var/log:/var/log
- /home/uadmin/msw/queuemgr/mongodb_cache:/usr/src/app/mongodb_cache
container_name: publisher
但是,docker compose images
命令的输出为这两个对象显示相同的图像id:
uadmin@blr0ubmsmqtest:~/msw/queuemgr$ docker-compose images
Container Repository Tag Image Id Size
---------------------------------------------------------
consumer consumer latest afa1dcf63755 458.6 MB
publisher publisher latest afa1dcf63755 458.6 MB
如何使用每个容器创建多个图像?这两个DockerFile是否可能相同?这会导致这种情况;第二个映像将仅从第一个映像的缓存层构建,并且您将得到相同的映像。(它们可能具有不同的
CMD
,您不需要在撰写设置中重写命令:
。)