Build container with docker-compose, but run /etc/bash with -it option later?
我正在使用docker-compose进行开发。在此过程中,我经常需要构建5个容器(1个用于Web服务器,4个用于postgres,redis,mongo等)。 Web服务器容器被配置为包括其他容器的链接,它具有其自己的ENV变量,从开发主机安装的卷。
问题是我不需要Web容器来运行服务器本身。代替此,在创建所有依赖容器之后,我需要在Web容器内使用
1 | CMD /bin/true |
很明显,这样的容器不会运行,所以我不能使用像
1 | docker exec -it <CONTAINER ID> /bin/bash |
将其"输入"并运行
有什么方法可以将compose作为
顺便说一句,我当然可以使用
手动启动一个单独的Web容器
1 2 3 4 5 6 7 8 | docker run \\ --link postgres --link ... -e"NODE_ENV=development" \\ -e ... \\ ... ... .. |
但是在这种情况下,每次我要开发应用程序时,我都需要将所有链接,env vars,卷等附加为参数。
看起来像
Runs a one-time command against a service. For example, the following command starts the web service and runs bash as its command.
$ docker-compose run web bash
命令
如果使用任何端口映射,则可以考虑使用
像
如果图像使用