zoukankan      html  css  js  c++  java
  • docker修改运行中容器的端口映射

    两种方法

    一、docker commit

    把一个容器的文件改动和配置信息commit到一个新的镜像。这个在测试的时候会非常有用,把容器所有的文件改动和配置信息导入成一个新的docker镜像,然后用这个新的镜像重起一个容器,这对之前的容器不会有任何影响。

    1、停止docker容器

    1. docker stop container01

    2、commit该docker容器

    1. docker commit container01 new_image:tag

    3、用前一步新生成的镜像重新起一个容器

    1. docker run --name container02 -p 80:80 new_image:tag

        优缺点:这种方式的优点是不会影响统一宿主机上的其他容器,缺点是管理起来显得比较乱。

    二、直接修改容器配置文件

    注:这里很多人会发生修改重启后,配置文件恢复成未修改的状态,一定要先停止docker服务再修改,而不是停止容器再修改。 

    1、查询需要修改端口映射的容器ID

    docker inspect [OPTIONS] NAME|ID [NAME|ID...] OPTIONS说明 -f :指定返回值的模板文件。 -s :显示总的文件大小。 --type :为指定类型返回JSON。

    2、关闭docker

    service docker stop

    3、进入docker的container里面

    cd /var/lib/docker/containers/AAA

    这里 AAA 是 容器 ID

    注意可能会没有权限

    chmod -R +wrx /var/lib/docker/containers/AAA

    4、更改两个文件
    首先我需要的是打开docker内部的3306端口,映射到8086端口上

    hostconifg.json

    这里我需要添加容器内部的3306端口,外部是8086端口。

    config.v2.json
    修改两个地方,一个是Port,还有一个是Config.ExposedPort

    5、最后打开docker

    service docker start
  • 相关阅读:
    Oracle表空间管理
    Oracle创建函数
    Oracle触发器
    Oracle概要文件
    Oracle结构控制语句
    比较实用的网站
    Java23种设计模式之单例模式
    Java 对象属性的遍历
    JQuery 多个ID对象绑定一个click事件
    好习惯的养成****
  • 原文地址:https://www.cnblogs.com/hkgov/p/14276263.html
Copyright © 2011-2022 走看看