当前位置:   article > 正文

Docker之Mac下直接修改容器配置_修改 容器mac

修改 容器mac

前言:笔者想配置容器本身的端口映射,有2种方式:

  1. 将现有的容器打包成镜像,然后在使用新的镜像运行容器时重新指定要映射的端口
  2. 修改要端口映射的容器的配置文件(我们采用第二种)

但是baidu和google上的资料几乎没有解决问题。因为Mac下运行docker容器时,其卷挂载方式与在普通Linux上不同。所以docker inspect 获取的配置文件地址在宿主机上(MAC)直接查找的情况下是找不到的。那如何在Mac下修改容器配置呢?

一、在终端下输入: docker inspect container-name 获取文件配置

请记住此时的/var/lib/docker/containers/2bc0570d9fec002389272e066987b8028e0b295f162aa8e7177147d43ec1419d路径。

并且 docker stop 容器(关键)

二、 进入linuxkit(docker虚拟机)

(1)新开一个终端窗口,输入:

  • screen ~/Library/Containers/com.docker.docker/Data/vms/0/tty

screen 命令执行后会出现空白,我们按回车即可

  • 如果需要干掉这个screen,按ctrl+a + k,最后按y确认即可以kill掉这个screen
  • 如果只是暂时退出这个screen,下次再进去,使用ctrl+a + d,而如果需要再次进入的时候应当使用screen -dr,否则使用screen ~/Library/Containers/com.docker.docker/Data/vms/0/tty再进去会是无法操作情况,将这个screen干掉即可
  • 实在一直没出来linuxkit页面,那就重新退出Docker DeskTop后,再重新执行screen即可

三、修改配置文件

(1)进入我们记住的路径

cd /var/lib/docker/containers/2bc0570d9fec002389272e066987b8028e0b295f162aa8e7177147d43ec1419d

(2)修改hostconfig.json,在PortBindings下添加端口绑定"5291/tcp": [{"HostIp": "","HostPort": "5291"}],表示绑定端口5291

(3)修改config.v2.json在ExposedPorts中加上要暴露的端口,即5291

 

(4)修改完后重启Docker DeskTop 并且 直接关掉 linuxkit 窗口(按ctrl+a + k,最后按y确认即可以kill掉这个screen了)

四、查看配置是否生效

 (1)docker restart 容器

 

 (2)docker port 容器

 

五、其他 

  • 推荐Mac可视化docker管理工具:Kitematic(用完就会真香定理)
  • 推荐一篇文章:docker和volume
  • 大家可以了解下docker-compose,用起来也很香,配置更方便
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/229434
推荐阅读
相关标签
  

闽ICP备14008679号