1. 程式人生 > >如何動態修改docker的埠對映

如何動態修改docker的埠對映

docker的埠對映關係一般是在將映象開啟成容器的時候通過引數p來設定的,但是如果我們需要對已經在執行的容器進行埠對映的新增,那麼就需要將容器從新打成映象(可能對容器進行了修改),然後再轉換成容器,這樣就比較笨重,下面介紹一種通過修改配置的方式,動態的去修改docker容器的埠對映。
動態修改docker的埠對映很簡單,只需要以下五步:

  • 將容器停止
docker stop 容器id
  • 將docker程式停止
使用指令 systemctl stop docker 或者 service docker stop
或者暴力一點,直接通過ps查詢到pid,然後kill
  • 修改配置檔案
cd /var/lib/docker/containers/容器id/
vim hostconfig.json
新增埠對映,格式如下:
PortBindings:{
	"80/tcp":[
		"HostIp":"",
		"HostPort":"80"
	]
}
儲存後,然後修改config.v2.json
vim config.v2.json
新增以下配置:
ExposedPorts:{
	“80/tcp”:{}
}
  • 重啟docker程式
systemctl start docker 或者 service docker start
有些docker綠色版的直接執行dockerd就可以了
  • 將容器重新開啟
docker start 容器id