docker增加映射端口和映射目录

2021年11月27日 | 分类: docker | 评论: 0 | 浏览: 367

http://www.iamlintao.com/6986.html

如果已经docker已经运行,但是发现需要新增加一个映射端口,应该如下做:

1 查看容器

docker  ps -a

 

2 停止容器

docker stop f503

3 停止docker服务

systemctl stop docker

4 修改文件

vi   /var/lib/docker/containers/{container_id}/hostconfig.json

找到 这个 PortBindings 值。在这个json集合里边追加新端口

 

"PortBindings": {
     "80/tcp": [
         {
             "HostIp": "",
             "HostPort": "80"
         }
     ],
     "8888/tcp": [
         {
             "HostIp": "",
             "HostPort": "8888"
         } 
     ]
 }

注:如果是增加映射目录则要修改hostconfig.json中开头的 “Binds”部分


"Binds": ["/webroot/www/go/goweb:/www/go/src/goweb", "/webroot/www/go/diyikaoshi:/www/go/src/diyikaoshi"],

5 启动docker服务

systemctl start docker

6 启动容器

docker start f503

 

备注: 第4步修改文件要注意,如果config.v2.json里面也记录了端口,也要修改,

原帖地址 : https://stackoverflow.com/questions/19335444/how-do-i-assign-a-port-mapping-to-an-existing-docker-container

config.v2.json文件里边

修改值 : config->ExposedPorts   和  networsettings->Ports , 参看下图

复制代码

"Config": {
    ....
    "ExposedPorts": {
        "80/tcp": {},
        "8888/tcp": {}
    },
    ....
},
"NetworkSettings": {
....
"Ports": {
     "80/tcp": [
         {
             "HostIp": "",
             "HostPort": "80"
         }
     ],

 

 


顶一下 ▲()
踩一下 ▼()
发表留言
登录后才能发表留言,立即 登录注册
提交 (Ctrl+Enter)
Copyright 2020-2022 xaoi博客 All Rights Reserved.