Docker容器在運(yùn)行期間有時(shí)可能會需要修改或者添加暴露的端口,但是有時(shí)候運(yùn)行的容器又不想再另外建立一個(gè)新的鏡像。這時(shí)可以找到docker容器的存放地方,然后直接修改配置文件。
我們的容器都是保存在/var/lib/docker/containers下
面。
我的容器是在/var/lib/docker/containers/797f3d0cb82aec7d1c355c7461b5bc5a050c1c0cbbe5d813ede0edad061e6632
每個(gè)容器ID對應(yīng)一個(gè)hash_id,可以看到nginx容器暴露了兩個(gè)端口。下面我們來添加多一個(gè)9999端口。
進(jìn)入容器對應(yīng)的目錄:
cd /var/lib/docker/containers/797f3d0cb82aec7d1c355c7461b5bc5a050c1c0cbbe5d813ede0edad061e6632
我們看到:
把hostconfig.json復(fù)制出來使用json轉(zhuǎn)換工具找到“PortBindings”節(jié)點(diǎn)
接下來我們就依葫蘆畫瓢在上面添加一個(gè)。
如圖:
修改hostconfig.json
并保存。
然后再修改config.v2.json的ExposedPorts
,如圖:
保存退出。
重啟docker ,
重啟容器。
可以看到,9999端口已經(jīng)暴露出來了。
總結(jié)
以上所述是小編給大家介紹的Docker動態(tài)添加端口不需要重新建立鏡像的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!