修改docker容器埠對映的方法

2021-08-14 07:32:11 字數 631 閱讀 4897

大家都知道docker run可以指定埠對映,但是容器一旦生成,就沒有乙個命令可以直接修改。通常間接的辦法是,儲存映象,再建立乙個新的容器,在建立時指定新的埠對映。

有沒有辦法不儲存映象而直接修改已有的這個容器呢?有。在stackoverflow上面找到答案了,原帖如下

我的操作步驟是:

1) 停止容器

2) 停止docker服務(systemctl stop docker)

3) 修改這個容器的hostconfig.json檔案中的埠(原帖有人提到,如果config.v2.json裡面也記錄了埠,也要修改)

cd /var/lib/docker/3b6ef264a040* #這裡是container id

vi hostconfig.json

如果之前沒有埠對映, 應該有這樣的一段:

"portbindings":{}

增加乙個對映, 這樣寫:

"portbindings":]}

前乙個數字是容器埠, 後乙個是宿主機埠.

而修改現有埠對映更簡單, 把埠號改掉就行.

4) 啟動docker服務(systemctl start docker)

5) 啟動容器

Docker容器修改埠對映

對於已經建立的docker容器,需要新增容器對主機的埠對映,主要分為三種 1.使用docker ps a命令找到要修改容器的container id 2.執行以下命令,進入該容器目錄 docker inspect container id grep id cd var lib docker cont...

修改docker容器的埠對映

大家都知道docker run可以指定埠對映,但是容器一旦生成,就沒有乙個命令可以直接修改。通常間接的辦法是,儲存映象,再建立乙個新的容器,在建立時指定新的埠對映。有沒有辦法不儲存映象而直接修改已有的這個容器呢?有。在stackoverflow上面找到答案了。方法一cd var lib docker...

修改docker容器埠對映的方法

大家都知道docker run可以指定埠對映,但是容器一旦生成,就沒有乙個命令可以直接修改。通常間接的辦法是,儲存映象,再建立乙個新的容器,在建立時指定新的埠對映。方法一cd var lib docker containers d00254ce3af7 這裡是container id vim hos...