码迷,mamicode.com
首页 > 系统相关 > 详细

mac 下docker得端口转发

时间:2015-06-09 20:10:07      阅读:271      评论:0      收藏:0      [点我收藏+]

标签:mac   docker   虚拟机   端口转发   

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

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

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

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

?  ~  docker run -ti -p 2222:22 sshd:ubuntu2

打开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:/#

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:~#

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

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

技术分享
技术分享

mac 下docker得端口转发

标签:mac   docker   虚拟机   端口转发   

原文地址:http://blog.csdn.net/u010387163/article/details/46429493

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!