將docker容器的配置導出為docker-compose.yml


將容器的配置導出docker-compose.yml

現象1

有時候,我們需要想知道docker容器的運行參數、環境變量等配置,以便容器以后被刪掉之后,可以重新運行起來。特別是在測試環境,有些容器可能就是一個docker run就運行起來了。或者隨便找一個目錄丟了一個docker-compose.yml運行起來,但是下次再回來找就找不到docker-compose.yml的路徑了。這時候進行對程序做升級、參數變更等操作,會非常麻煩,需要一一去對環境變量和運行參數

現象2

某些特殊情況可能導致 docker-compose.yml 被刪掉且找不回了,但是運行中的 container 還沒有刪掉,那么有沒有可能通過 container 反向生成配置文件呢?

解決方法

1 用dctc
dctc是一個可以根據docker容器的信息生成docker-compose.yml配置的工具。這樣無論是用docker run跑起來的,還是忘了docker-compose.yml的位置了,只要再用dctc來生成一個docker-compose.yml配置即可對其做變更后,再進行部署。
dctc的使用非常簡單,dctc 后加容器id或者名字即可,默認的,它會把docker-compose的配置輸出到標准輸出,可以對輸出運行重定向或者用 -o參數指定輸出的路徑。
工具地址:
tenfyzhong/dctc​github.com
原文鏈接:https://blog.csdn.net/weixin_29623481/article/details/112578347

2 用autocompose
直接安裝

pip install pyaml
pip install docker
python autocompose.py <container-name-or-id>

docker方式 portainer-admin為容器名或容器id

docker run --rm -v /var/run/docker.sock:/var/run/docker.sock red5d/docker-autocompose portainer-admin

項目地址 https://github.com/Red5d/docker-autocompose


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM