docker:已启动容器修改添加端口映射

    技术2022-07-12  68

    文章目录

    简述一、先提交,在配置二、 修改配置文件1、关闭docker服务2、修改hostconfig.json3、修改config.v2.json4、重启 docker服务5、查看配置项已经修改成功

    简述

    正常情况下,在你创建容器时可以添加多个端口映射,写法如下

    每个端口映射都加一个-p docker run -itd --name centos -p 4000:8081 -p 3306:3306 --privileged centos:latest /usr/sbin/init

    如果你已经创建容器并且启动,在想保留容器已有配置的前提下想修改添加端口映射有如下两种方法

    一、先提交,在配置

    如下,我想给 ms_tomcat 容器添加 mysql 3306 端口映射

    docker ps -a

    1、先将容器提交为镜像

    docker commit ms_tomcat ms_tomcat_3306

    2、创建新的容器并运行

    docker run -itd --name ms_tomcat -p 8081:8080 -p 3306:3306 --restart always --privileged centos:latest /usr/sbin/init

    二、 修改配置文件

    依然修改ms_tomcat容器,添加 mongodb 27017 端口

    1、关闭docker服务

    一定要停止docker服务,我开始忘了关闭,修改两次都没成功

    systemctl stop docker

    2、修改hostconfig.json

    vim /var/lib/docker/containers/CONTAINER ID/hostconfig.json

    修改CONTAINER ID 为容器id 查看容器id ,输入 vim /var/lib/docker/containers/ 并粘贴容器id,tab键自动补全,最后输入要修改的文件hostconfig.json 修改如下位置 在配置项 "PortBindings"添加如下配置

    3、修改config.v2.json

    和上面类似

    vim /var/lib/docker/containers/CONTAINER ID/config.v2.json

    修改如下位置 在配置项 "ExposedPorts"添加如下配置

    4、重启 docker服务

    service docker restart

    5、查看配置项已经修改成功

    docker inspect ms_tomcat

    Processed: 0.009, SQL: 9