Docker组合删除另一个容器
我有一个基本docker-compose.yml
文件的项目,然后2另一个文件 – 每个环境docker-compose.dev.yml
和docker-compose.prod.yml
。
泊坞窗,compose.yml
version: "2" services: app: build: context: . depends_on: - redis - selenium networks: - richy redis: image: redis:3.2 container_name: redis networks: - richy selenium: image: selenium/standalone-chrome container_name: selenium networks: - richy networks: richy: driver: bridge
泊坞窗,compose.dev.yml
version: "2" services: app: build: args: env: dev image: richy_image:dev-latest container_name: richy-dev volumes: - .:/var/www/richy ports: - 9000:80 environment: - ENV=dev
泊坞窗,compose.prod.yml
version: "2" services: app: build: args: env: prod image: richy_image:prod-latest container_name: richy-prod volumes: - /home/grafa/workspace/prichy/richy/db.sqlite3:/var/www/richy/richy/db.sqlite3 ports: - 9001:80 environment: - ENV=prod
我运行我的dev / prod环境,如docker-compose -f docker-compose.yml -f docker-compose.(dev|prod).yml up
事情是,我不能在两个容器并排运行,尽pipe我能够像一个月前那样做,而且几乎没有变化。 每次我运行例如开发环境,我为产品环境docker-composedocker吐出这个:
redis is up-to-date selenium is up-to-date Recreating richy-dev
这很奇怪,因为为什么当我启动richy-prod时想重新创buildrich-dev容器。
也许在我的configuration文件中有冲突。 你们能帮我吗?
谢谢。
基本上区分两个环境的容器名称,你需要明确定义项目名称。 否则会根据文件夹名称取名称。
您可以使用-p或COMPOSE_PROJECT_NAME环境variables。
取自: https : //github.com/docker/compose/issues/2982#issuecomment-186835033