使用新配置重新建立單一 docker-compose 容器

使用新配置重新建立單一 docker-compose 容器

如果我對其進行更改docker-compose.yml(例如,更改容器連接埠公開的主機連接埠),我可以重新建立該單一容器還是需要重新啟動整個堆疊?

docker-compose stop ; docker-compose up會完成這項工作,但我想避免重新啟動其餘的服務。我還想避免刪除與我正在重新啟動的服務關聯的捲,因此這docker-compose kill <service> ; docker-compose rm不是一個選項。

答案1

就再跑docker-compose up一次吧。受您的變更影響的所有內容(容器、磁碟區、網路等)都將重新創建,其他容器將保留。

如果您想使用較新的圖像,請docker-compose pull提前運行。

答案2

有時對某些 env 檔案的變更會被忽略。那我就做

docker stop mycontainer
docker compose up

這將重新啟動單一容器以及依賴容器,這就是您所做的。避免重新啟動依賴的容器是個壞主意,因為mycontainer會出現不同的 docker ip

有某種reload命令就好了

相關內容