当前位置:   article > 正文

mac 下docker得端口转发_mac docker端口转发

mac docker端口转发

在linux下我们可以在docker中新建容器,然后通过端口转发直接访问到容器。但是在mac下中间又通过了
一层虚拟机,所以端口转发就需要在多做一点。

1 把本地端口和虚拟机对应起来:可以通过命令来做:

#VBoxManage modifyvm "boot2docker-vm" --natpf1 "containerssh,tcp,,2222,,2222"
  • 1

也可以通过手动添加:
这里写图片描述
点击上图端口转发即可添加。
2 根据镜像建立容器,将虚拟机得2222端口映射到22,并打开ssh服务

➜  ~  docker run -ti -p 2222:22 sshd:ubuntu2
  • 1

打开ssh服务:

➜  ~  docker start -i 88
root@886ab361140c:/# ssh localhost
ssh: connect to host localhost port 22: Connection refused
root@886ab361140c:/# service ssh start
 * Starting OpenBSD Secure Shell server sshd                                                                                                           [ OK ]
root@886ab361140c:/#
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

3 在宿主机上ssh链接到容器:

➜  ~  ssh root@127.0.0.1 -p 2222
Warning: Permanently added '[127.0.0.1]:2222' (RSA) to the list of known hosts.
Welcome to Ubuntu 14.04.2 LTS (GNU/Linux 4.0.3-boot2docker x86_64)

 * Documentation:  https://help.ubuntu.com/
Last login: Tue Jun  9 03:41:46 2015 from 10.0.2.2
root@886ab361140c:~#
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

只是不知道为什么这里等了一会才连接上。

最后就是端口映射成功了,就可以在容器里做各种事,比如nginx,apache,数据库等并在容器外访问了。
4 虚拟机网络方面得配置
另外如果使用虚拟机里新建linux来做:怎么让虚拟机里的linux即能访问外网又能被外网访问到:
虚拟机里得linux要访问到外网是通过网桥到外网实现,外网宿主机要访问到虚拟机里得linux是通过host-only方式。
所以网卡部分需要配置两块网卡:

第一块网卡访问外网
第二块让 外网访问到此虚拟机

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/224615
推荐阅读
相关标签
  

闽ICP备14008679号