Docker動態添加端口,不需要重新建立鏡像


 

Docker容器在運行期間有時可能會需要修改或者添加暴露的端口,但是有時候運行的容器又不想再另外建立一個新的鏡像。這時可以找到docker容器的存放地方,然后直接修改配置文件。

我們的容器都是保存在/var/lib/docker/containers下面。

我的容器是在/var/lib/docker/containers/797f3d0cb82aec7d1c355c7461b5bc5a050c1c0cbbe5d813ede0edad061e6632

每個容器ID對應一個hash_id,可以看到nginx容器暴露了兩個端口。下面我們來添加多一個9999端口。

進入容器對應的目錄:

cd /var/lib/docker/containers/797f3d0cb82aec7d1c355c7461b5bc5a050c1c0cbbe5d813ede0edad061e6632

我們看到:

把hostconfig.json復制出來使用json轉換工具找到“PortBindings”節點

 接下來我們就依葫蘆畫瓢在上面添加一個。

如圖:

修改hostconfig.json並保存。

然后再修改config.v2.json的ExposedPorts,如圖:

保存退出。

重啟docker ,

重啟容器。

可以看到,9999端口已經暴露出來了。

 


免責聲明!

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



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