zoukankan      html  css  js  c++  java
  • 【docker】追加docker容器端口映射的方法

    docker run可以指定端口映射,但是容器一旦生成,就没有一个命令可以直接修改。通常间接的办法是,保存镜像,再创建一个新的容器,在创建时指定新的端口映射。

    但这样太麻烦了。现在有新方案来解决掉:

    操作步骤:

    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"
             } 
         ]
     }

    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"
             }
         ],

  • 相关阅读:
    实现JavaScript自定义函数的整合、链式调用及类的封装
    jQuery事件
    jQuery特效
    jQuery基础细节
    CSS3盒模型
    主流清浮动方法
    JavaScript 执行环境及作用域
    JavaScript 参数传递与变量复制
    PHP雪花背景验证码
    Linkis 0.9.2 版本发布
  • 原文地址:https://www.cnblogs.com/richerdyoung/p/10154753.html
Copyright © 2011-2022 走看看