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

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

https://stackoverflow.com/questions/19335444/how-do-i-assign-a-port-mapping-to-an-existing-docker-container

我的操作步骤是:

1) 停止容器

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

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

cd /var/lib/docker/3b6ef264a040* #这里是CONTAINER ID

vi hostconfig.json

如果之前没有端口映射, 应该有这样的一段:

"PortBindings":{}

增加一个映射, 这样写:

"PortBindings":{"3306/tcp":[{"HostIp":"","HostPort":"3307"}]}

前一个数字是容器端口, 后一个是宿主机端口.

而修改现有端口映射更简单, 把端口号改掉就行.

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

5) 启动容器

---------------------

作者:wesleyflagon

linux修改容器内的mysql端口映射_修改docker容器端口映射的方法相关推荐

  1. docker容器mysql头文件_在Docker容器中使用MySQL数据库

    开发过程中经常需要安装.调试mysql数据库,还需要在各种操作系上安装包依赖,实在是繁琐,因此就研究了一下如何在docker上运行一个mysql镜像,省却了我安装.找依赖的问题. 注:本文所有内容均在 ...

  2. docker里mysql精简版_精简Docker镜像的几个方法

    使用更精简的镜像 常用的Linux系统镜像一般有 Debian.Ubuntu.CentOS和Alpine,其中Alpine是面向安全的轻量级Linux发行版本.Docker的Alpine镜像仅有不到5 ...

  3. linux修改容器内的mysql端口_Linux系统下修改phpstudy集成环境中的MySQL端口号的步骤...

    这篇文章给大家介绍的内容是关于Linux系统下修改phpstudy集成环境中的MySQL端口号的步骤 ,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 1. 首先需要安装好phpstu ...

  4. 如何修改mysql占用的端口号_修改mysql端口号(mysql的端口号)

    修改mysql端口号(mysql的端口号) 2020-05-07 22:12:00 共10个回答 如何查看mysql默认端口号和修改端口号 登录mysql,使用命令showglobalvariable ...

  5. docker配置容器mysql启动参数_修改Docker容器启动配置参数

    有时候,我们创建容器时忘了添加参数 --restart=always ,当 Docker 重启时,容器未能自动启动, 现在要添加该参数怎么办呢,方法有二: 1.Docker 命令修改 docker c ...

  6. docker上启动nginx,并配置修改nginx的配置文件 nginx、挂载文件、docker容器中文乱码

    Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务.因为其优秀的性能,使得其成为日常开发,线上运营必不可少的软件了.下面就通过 ...

  7. 修改mysql数据库字符集_修改及查看mysql数据库的字符集

    Liunx下修改MySQL字符集: 1.查找MySQL的cnf文件的位置 find / -iname '*.cnf' -print /usr/share/mysql/my-innodb-heavy-4 ...

  8. php如何查询mysql数据库字符集_修改及查看mysql数据库的字符集_MySQL

    bitsCN.com Liunx下修改MySQL字符集: 1.查找MySQL的cnf文件的位置find / -iname '*.cnf' -print /usr/share/mysql/my-inno ...

  9. docker登录mysql数据库_从docker容器连接到远程MySQL数据库

    我正在努力将一个Django 1.5.x应用程序容器化,该应用程序通过ODBC连接到单独服务器上的 MySQL数据库: [mysql_default] database = DB_NAME drive ...

最新文章

  1. SpringCloud断路器hystrix
  2. USB无法识别原因分析及解决方案
  3. 调用startActivityForResult,onActivityResult无响应的问题
  4. 北风设计模式课程---7、建造者模式
  5. vue与php接口对接,怎样使用vue项目中api接口
  6. 【图像超分辨率】RRSGAN: Reference-Based Super-Resolution for Remote Sensing Image
  7. Android中如何查看在res中存放的drawable文件对应的JAVA类型是什么呢
  8. 计算机维修知识综述论文,机器学习领域各领域必读经典综述论文整理分享
  9. IIS-301永久重定向
  10. html/css小练习2
  11. Go基础系列:接口类型断言和type-switch
  12. yoga710怎么进入bios_重装系统看不懂bios?超详细中英文翻译,教你1分钟识别bios各项...
  13. 基于地理距离的省际空间权重矩阵
  14. linux c post上传文件,Linux C语言Http POST上传图片
  15. JavaScript基础知识总结(1)
  16. c语言:用牛顿迭代法求方程在1.5附近的根:2x^3-4x^2+3x-6=0.
  17. getPhoneNumber:fail Error: 用户绑定的手机需要进行验证,请在客户端完成短信验证
  18. 如何把文档表格转化成二维码,手机扫码就能看?
  19. 代码生成器-mybatis-plus-generator
  20. 柠檬汁的人生观-李嘉诚

热门文章

  1. 指针,指针:分装一个函数,实现两个数的交换。 指向固定的区域
  2. 根据网络状态获取Ip地址
  3. linux 程序定时重启tomcat,linux下实现tomcat定时自动重启
  4. Linux下VMware虚拟机报Could not open /dev/vmmon: No such file or directory. Please make sure that the kern
  5. go post 参数_go语言实现网易云音乐爬虫
  6. 162. Leetcode 45. 跳跃游戏 II (贪心算法-贪心区间)
  7. 190. Reverse Bits
  8. Hadoop应用实战100讲(二)-Hadoop常用命令汇总
  9. 自然语言处理NLP,如何使用AMBERT算法建立多粒度token预训练语言模型
  10. 深度学习核心技术精讲100篇(六)-keras 实战系列之知识蒸馏(Knowledge Distilling)