修改docker容器端口映射的方法

2023-05-16

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

有没有办法不保存镜像而直接修改已有的这个容器呢?有。在stackoverflow上面找到答案了,原帖链接

方法一
  • 1、停止容器(docker stop d00254ce3af7)

  • 2、停止docker服务(systemctl stop docker)

  • 3、修改这个容器的hostconfig.json文件中的端口(原帖有人提到,如果config.v2.json里面也记录了端口,也要修改)

    cd /var/lib/docker/containers/d00254ce3af7* #这里是CONTAINER ID

    vim hostconfig.json
    如果之前没有端口映射, 应该有这样的一段:
    “PortBindings”:{}

    增加一个映射, 这样写:
    “PortBindings”:{“8080/tcp”:[{“HostIp”:“”,“HostPort”:“60000”}]}
    前一个数字是容器端口, 后一个是宿主机端口。将宿主机的60000端口映射到容器的8080端口
    而修改现有端口映射更简单, 把端口号改掉就行。

  • 4、启动docker服务(systemctl start docker)

  • 5、启动容器(docker start d00254ce3af7)

hostconfig.json文件

config.v2.json文件

方法二

1、获得容器IP
将container_name 换成实际环境中的容器名

docker inspect `container_name` | grep IPAddress

2、iptable转发端口
将宿主机的60000端口映射到容器的8080端口

iptables -t nat -A  DOCKER -p tcp --dport 60000 -j DNAT --to-destination 172.17.0.2:8080
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

修改docker容器端口映射的方法 的相关文章

随机推荐

  • MySQL的共享锁、排他锁、意向锁

    目录 一 共享锁 xff08 Shared Lock xff09 二 排他锁 xff08 EXclusive Lock xff09 三 意向锁 xff08 Intention Lock xff09 MySQL锁的模式有三种 xff1a 共享
  • Tomcat服务器的启动及启动失败可能的原因

    一 如何启动Tomcat 找到Tomcat目录下的bin目录下的startup bat文件 双击 就可以启动Tomcat服务器 启动后可以 打开浏览器 在浏览器地址栏中输入以下地址测试 1 http localhost 8080 2 htt
  • Docker端口映射

    端口映射 容器中可以运行一些应用 xff0c 要让外部也可以访问这些应用 xff0c 可以通过 P 或 p 参数来指定端口映射 当使用大写的 P 标记时 xff0c Docker 会随机映射一个物理机的 49000 49900 之间的端口到
  • 进入docker容器命令行

    docker exec it containerid bin bash
  • 正点原子FreeRTOS手把手教学-基于STM32视频

    正点原子FreeRTOS手把手教学 基于STM32 哔哩哔哩 bilibili
  • 谷歌浏览器下载、安装、配置。(保姆级详细教程。)

    1 xff0c 首先找一个你电脑已经自带了的浏览器 然后打开浏览器 2 xff0c 在浏览器里面的搜索框输入谷歌浏览器 然后进行搜索 找到带有官方标志的网址点击进去 xff08 优先选官网下载 xff0c 因为非官网的有时候会带有捆绑软件或
  • 饿了么神级UI组件库——Element-UI使用指南

    1 Element UI介绍 element ui 是饿了么前端出品的基于 Vue js的 后台组件库 xff0c 方便程序员进行页面快速布局和构建 Element UI官方站点 xff1a https element eleme cn z
  • get请求和post请求的区别(全面讲解)

    1 get请求一般是去取获取数据 xff08 其实也可以提交 xff0c 但常见的是获取数据 xff09 xff1b post请求一般是去提交数据 2 get因为参数会放在url中 xff0c 所以隐私性 xff0c 安全性较差 xff0c
  • vscode 脑图插件mindmap

    在日常办公中 xff0c 我们经常使用脑图工具来说明一个复杂的 事情 xff0c 百度提供了一个在线的脑图工具 xff0c https naotu baidu com 今天 xff0c 我们来看下vscode中如何通过安装插件 xff0c
  • Android Studio 实现登录注册-源代码 (连接MySql数据库)

    Android Studio 实现登录注册 源代码 xff08 连接MySql数据库 xff09 Android Studio 实现登录注册 源代码 二 xff08 Servlet 43 连接MySql数据库 xff09 Android S
  • PX4无人机-Gazebo仿真实现移动物体的跟踪

    原文链接PX4无人机 Gazebo仿真实现移动物体的跟踪末尾有演示视频 这个学期我们有一个智能机器人系统的课设 我们组分配到的题目是 仿真环境下使用无人机及相机跟踪移动物体 本文主要记录完成该课设的步骤以及内容 我们采用的最终方案是PX4飞
  • Python贪吃蛇 (完整代码+详细注释+粘贴即食)

    文章目录 代码运行截图笔记补充参考博客 xff08 阿里嘎多 xff01 xff09 代码 usr bin env python coding utf 8 author xff1a Wangdali time 2021年1月20日16 08
  • 人工智能作业——python实现洗衣机模糊推理系统实验

    人工智能作业 python实现洗衣机模糊推理系统实验 实验环境实验要求代码实验结果 书中实验要求用Matlab实现 xff0c 但是Matlab包太大了 xff0c 且还需要重新学习Matlab的使用 发现python也可以实现 xff0c
  • 如何使用 Python 提取 JSON 中的数据?

    我们知道在爬虫的过程中我们对于爬取到的网页数据需要进行解析 因为大多数数据是不需要的 所以我们需要进行数据解析 常用的数据解析方式有正则表达式 xpath bs4 这次我们来介绍一下另一个数据解析库 jsonpath 在此之前我们需要先了解
  • Linux查看文件内容的几种方法

    文章目录 1 cat 显示文件内容2 less 向前或者向后查看文件内容3 tail 查看文件尾部的内容4 head 查看文件开头的内容5 more 分页显示文件内容 1 cat 显示文件内容 使用cat命令时 xff0c 如果文件内容过多
  • [野火]《FreeRTOS内核实现与应用开发实战指南》视频

    野火 FreeRTOS内核实现与应用开发实战指南 哔哩哔哩 bilibili 1 正点原子 FreeRTOS 视频教程 正点原子 FreeRTOS 视频教程 哔哩哔哩 bilibili 2 正点原子FreeRTOS手把手教学 基于STM32
  • FlinkSQL CDC实现同步oracle数据到mysql

    环境准备 1 flink 1 13 0 2 oracle 11g 3 flink connector oracle cdc 2 1 0 1 oracle环境配置 首先需要安装oracle环境 xff0c 参考 https blog csdn
  • MySQL窗口函数OVER()

    下面的讲解将基于这个employee2表 mysql gt SELECT FROM employee2 43 43 43 43 43 43 id name age salary dept id 43 43 43 43 43 43 3 小肖
  • ubuntu安装mysql详细过程

    1 安装mysql server sudo apt install mysql server 2 登录 sudo mysql u root p 两点要注意 添加sudo password中 任意密码都能登录 3 修改登录密码 ALTER U
  • 修改docker容器端口映射的方法

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