| 今天在技術群摸魚,有朋友問個docker的問題,替換配置文件不生效,也沒有原先的Dockerfile,所以就在想,有沒有什么方式可以直接從容器或鏡像生成Dockerfile。 |
雖然docker history命令可以看到所有歷史層級的操作,但是還是需要手動去寫Dockerfile
google一番,發現dfimage就是這樣一個工具
dfimage是一個alpine的鏡像,啟動的時候,通過將docker.sock映射到容器內部來運行,通常將這個操作做成別名
alias dfimage="docker run -v /var/run/docker.sock:/var/run /docker.sock --rm alpine/dfimage" dfimage -sV=1.36 nginx:latest
我們拿nginx鏡像試驗下

先pull一個nginx鏡像,我這里之前有,就直接用了,接着通過上面提到的命令,別名一個dfimage命令

做好別名之后,通過dfimage去生成nginx的Dockerfile,其實就是啟動一個容器工具,執行完之后即刪除


即可看到完整的Dockerfile
參考:https://hub.docker.com/repository/docker/alpine/dfimage
本文地址:https://www.linuxprobe.com/filter-dockerfile.html
Linux命令大全:https://www.linuxcool.com/
