在本地主机上使用具有多个项目的相同容器
Posted
技术标签:
【中文标题】在本地主机上使用具有多个项目的相同容器【英文标题】:Using same containers with multiple project on local host 【发布时间】:2017-05-17 16:33:56 【问题描述】:问题
我的电脑上有几个项目,都是开发的。
几个月前我开始使用 docker,我在项目之间共享一些配置。
我每次都有明确的容器列表。为什么?因为通常我的流程需要看起来像:
-
删除所有容器
docker rm $(docker ps -a -q)
删除所有图片 - docker rmi $(docker images -q)
运行docker-compose up -d
问题无处不在,我已经定义了 composer(如下面的配置)。当我切换但不删除图像/容器时,我有,composer/composer
容器存在并且不启动。
当然,我使用更多类似的服务,但这很简单。
docker-compose.yml
version: '2'
services:
php:
image: php:7.1.3-alpine
volumes:
- ./:/app
working_dir: /app
composer:
image: composer/composer
volumes_from:
- php
working_dir: /app
我的环境
Mac OSX 10.11.6 Docker for mac:17.03.1-ce-mac12 (17661)到现在
搜索文本如:Docker multi use of containers
/ docker multi projects on local with same container
阅读了一些关于配置的博客,但没有得到提示。
总结
由于主题很广,很多页。 也许我省略了一些对概念或配置的理解。
很高兴获得一些解释和提示,以便更好地管理 docker-compose.yml
这样的文件以及我的过程中出了什么问题。
谢谢。
【问题讨论】:
【参考方案1】:您的问题不是很清楚,但听起来您正在使用docker-compose
来启动容器,但依靠docker rm
/docker rmi
来移除它们。尝试使用 Docker Compose 做所有事情。启动服务:
docker-compose up -d
停止服务,但让流量保持不变:
docker-compose down
关闭服务并销毁卷:
docker-compose down --volumes
https://docs.docker.com/compose/reference/down/
对于您发布的撰写文件,您通常不需要使用docker rm
/docker rmi
。
【讨论】:
也许问题在于,在少数地方使用此配置。然后失望,但随着音量持续存在,当我在其他地方运行docker-compose up -d
时,这会导致崩溃来构建它。将对此进行测试并通知您。以上是关于在本地主机上使用具有多个项目的相同容器的主要内容,如果未能解决你的问题,请参考以下文章