zoukankan      html  css  js  c++  java
  • docker-02端口映射

    docker-02端口映射
    
    docker 仅在run的时候提供了-p参数来增加端口映射,这无法满足我们后续安装应用的需求,就需要增补端口映射,
    
    特别提醒:为了格式正确,建议在执行run命令的时候,指定一个端口映射,后续增加的时候进行复制黏贴
    
    1)停止docker 容器:
    docker stop 容器id/容器名称
    
    2)停止docker
    systemctl stop docker
    特别注意:一定要停止docker,否则修改了的配置文件会被还原
    
    3)进入目录,修改以下文件:
    /var/lib/docker/containers/[容器id]/hostconfig.json  
    /var/lib/docker/containers/[容器id]/config.v2.json 
    
    第一处修改:
    hostconfig.json 在根节点下 加入以下配置:
        "PortBindings": {
            "8080/tcp": [{
                "HostIp": "",
                "HostPort": "8089"
            }]
        },
    
    第二处修改:
    config.v2.json 在Config节点下的ExposedPorts节点(如果没有可以添加ExposedPorts节点)下添加以下配置:
    "8080/tcp": {}
    
    最终Config如下:
    "Config": {
            "Hostname": "e2040090cf57",
            "Domainname": "",
            "User": "",
            "AttachStdin": true,
            "AttachStdout": true,
            "AttachStderr": true,
            "ExposedPorts": {
                "8080/tcp": {}
            },
            "Tty": true,
            "OpenStdin": true,
            "StdinOnce": true,
            "Env": ["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"],
            "Cmd": ["/bin/bash"],
            "Image": "centos",
            "Volumes": null,
            "WorkingDir": "",
            "Entrypoint": null,
            "OnBuild": null,
            "Labels": {
                "org.label-schema.build-date": "20201204",
                "org.label-schema.license": "GPLv2",
                "org.label-schema.name": "CentOS Base Image",
                "org.label-schema.schema-version": "1.0",
                "org.label-schema.vendor": "CentOS"
            }
        },
    
    第三处修改:
    config.v2.json 在Config节点下的NetworkSettings节点的Ports节点加入以下配置:
                "8080/tcp": [{
                    "HostIp": "0.0.0.0",
                    "HostPort": "8089"
                }]
    最终NetworkSettings如下:
        "NetworkSettings": {
            "Bridge": "",
            "SandboxID": "7657e7557a4fc7faec2644e4b6e4dd89aa130b2d292cc79e8c5be11b45315e29",
            "HairpinMode": false,
            "LinkLocalIPv6Address": "",
            "LinkLocalIPv6PrefixLen": 0,
            "Networks": {
                "bridge": {
                    "IPAMConfig": null,
                    "Links": null,
                    "Aliases": null,
                    "NetworkID": "afcbb96c4ff2f8fcb46dcfc104d85975bf69aa281e4a8ef77ae08ff02af279a6",
                    "EndpointID": "ae8c89d80cdfc6ac3c617be9595e723dba9f17464f08cfc6a29ea7b3d828947e",
                    "Gateway": "172.17.0.1",
                    "IPAddress": "172.17.0.3",
                    "IPPrefixLen": 16,
                    "IPv6Gateway": "",
                    "GlobalIPv6Address": "",
                    "GlobalIPv6PrefixLen": 0,
                    "MacAddress": "02:42:ac:11:00:03",
                    "DriverOpts": null,
                    "IPAMOperational": false
                }
            },
            "Service": null,
            "Ports": {
                "8080/tcp": [{
                    "HostIp": "0.0.0.0",
                    "HostPort": "8089"
                }]
            },
            "SandboxKey": "/var/run/docker/netns/7657e7557a4f",
            "SecondaryIPAddresses": null,
            "SecondaryIPv6Addresses": null,
            "IsAnonymousEndpoint": false,
            "HasSwarmEndpoint": false
        },
    
    5)重启docker
    service docker restart
    或
    systemctl start docker
    
    6)启动容器进行测试
  • 相关阅读:
    实验一:初步认识程序在内存中运行
    读了 东方学帝 的 《薛定谔方程和狄拉克方程等在共量子论中处于什么地位?》
    别跟我说 正电子 是 狄拉克方程 推导 出来 的
    ∫ 1 / ( b / x
    我很好奇 俄罗斯 小哥 数学家 为 华为 解决 的 数学问题 是 什么
    对 潮汐 现象 的 计算机 程序 模拟
    二阶微分 没有意义, 二阶导数 才有意义
    关于 郭峰君 的 d ( x² + y² + z² ) = d ( c² t² )
    圆面积 公式 推导
    理论模型 和 计算能力
  • 原文地址:https://www.cnblogs.com/ShouWangYiXin/p/14433951.html
Copyright © 2011-2022 走看看