我正在使用docker-compose爲開發。在這個過程中,我經常需要構建5個容器(1個用於web服務器,4個用於postgres,redis,mongo等)。 Web服務器容器配置爲包含其他容器的鏈接,它具有自己的ENV變量,來自開發主機的已安裝卷。使用docker-compose構建容器,但稍後使用-it選項運行/ etc/bash?
問題是我不需要web容器來運行服務器本身。這是我需要執行/etc/bash
與-it
選項內的Web容器,所有依賴容器創建後。這就是爲什麼,我對Web容器dockerfile結尾:
CMD /bin/true
顯然,這種容器不會在運行,所以我不能用像水木清華
docker exec -it <CONTAINER ID> /bin/bash
爲「輸入」並運行node app.js
或一些其他任務。
任何方式來構建容器作爲docker-compose.yml
文件的一部分,但後來用-it選項運行/ etc/bash?
BTW,我當然可以手動啓動獨立的Web容器與
docker run \
--link postgres
--link ...
-e "NODE_ENV=development" \
-e ... \
...
...
..
,但這種情況下,我需要追加的各個環節,ENV瓦爾,體積等作爲變元的,每次我要去開發應用程序。
你能解釋一下你的用例/工作流程嗎?似乎不必要的複雜? – johnharris85