Mac OS下Boot2Docker的网络映射设置
Mac系统下安装Boot2Docker造成了三层网络:Mac->VirtualBox->Docker,通过docker run 参数-p/-P,能手动或自动设置VirtualBox与Docker间的网络映设,而Mac与VirtualBox间的网络映设一般采用图形界面的操作方式完成,此文将采用命令行的方式达到同样的效果。
下载Boot2Docker
执行下面命令可以配置Boot2Docker 使用高速下载镜像,目前采用的版本为1.8.0
$ mkdir ~/.boot2docker $ echo ISOURL = \"https://get.daocloud.io/boot2docker/boot2docker-lastest.iso\" > ~/.boot2docker/profile
也可以下载安装包
运行Boot2Docker
安装完成后,运行应用程序中的boot2docker。正常情况下会启动VirtualBox中的虚拟机并通过SSH连接至Docker,如果SSH默认的映射商品被修改,将导致Error requesting socket: exit status 255错误,通过$ boot2docker up -v
可以跟踪启动过程。
查询虚拟机及网络
查询虚拟机名称,默认启动的虚拟机名为boot2docker-vm
$ VBoxManage list vms
查询boot2docker-vm虚拟机的网络状态
$ VBoxManage showvminfo "boot2docker-vm" | grep NIC
关闭运行中的虚拟机
由于Boot2Docker会自动运行VirtualBox中的虚拟机,所以在设置网络映射时必须先关闭运行中的虚拟机。否则,将出现The machine 'boot2docker' is already locked for a session (or being unlocked)的错误提示
$ VBoxManage controlvm "boot2docker-vm" poweroff
修改虚拟机与Mac系统的网络映射
根据实际需要进行网络映射,其中
rulename: 自定义规则名称
hostip: Mac访问地址,可不填
hostport: Mac映射端口
guestip: 虚拟机访问地址,可不填
guestport: 虚拟机映射端口
$ VBoxManage modifyvm "boot2docker-vm" --natpf1 "<Rule Name>,<tcp|udp>,<Host IP>,<Host Port>,<Guest IP>,<Guest Port>"
启动虚拟机
设置完成后重新启动虚拟机 $ VBoxManage startvm "boot2docker-vm"
运行镜像
以wwj718提供的edX docker为例,运行其镜像
$ docker run -itd -p 8000:80 -p 8010:18010 --name edX wwj718/edx_cypress_docker:1.05
查看容器运行状态
$ docker ps
其他 - 删除映射端口,也需要关闭虚拟机,删除命令如下
$ VBoxManage modifyvm "boot2docker-vm" --natpf1 delete
Mac OS下Boot2Docker的网络映射设置的更多相关文章
- YII 框架在 MAC OS下 连接数据库失败 提示 DB connection: SQLSTATE[HY000] [2002]
作者:zccst CDbConnection failed to open the DB connection: SQLSTATE[HY000] [2002] No such file or dire ...
- wget Mac OS 下安装
wget是一个从网络上自动下载文件的自由工具,支持通过HTTP.HTTPS.FTP三个最常见的TCP/IP协议下载,并可以使用HTTP代理. 下面介绍如何在Mac OS 下安装Wget 下载最新版的 ...
- Mac os 下的文件权限管理
Mac os 下的文件权限管理 命令 ls -l -A 结果 -rw-r--r-- 1 user admin 2326156 4 12 15:24 adb 横线代表空许可.r代表只读,w代表写,x代表 ...
- mac os 下搭建android开发环境
mac os 下搭建android开发环境 周银辉 mac os 下搭建android环境比较方便, 如下几个步骤: 1,安装jdk 先搞清楚自己是否已经安装,在命令行下:java -version, ...
- mac os 下的sublime --- 快捷键
mac os 下的sublime ---列模式 http://www.oschina.net/question/249672_161413 触控板也可以的:左手同时按住 Option 和触控板左下角 ...
- Mac OS下编写对拍程序
介绍 对拍是信息学竞赛中重要的技巧,它通过一个效率低下但正确率可以保证的程序,利用庞大的随机生成数据来验证我们的高级算法程序.对拍最大的优势在于可以通过人力所不能及的速度和数量达到验证的效果.下面我们 ...
- Win7+VMware Workstation环境下的CentOS-Linux网络连接设置
Win7+VMware Workstation环境下的CentOS-Linux网络连接设置 http://blog.sciencenet.cn/blog-430991-507041.html 近日 ...
- MAC OS下免费下载YouTube
YouTube上有很多不错的视频,你感兴趣的视频除了可以加入自己播放列表之外,还可以将其下载到本地收藏起来.推荐这款软件“Xilisoft Download YouTube Video for Mac ...
- Mac OS下 Redis2.6.14部署记录
Mac OS下 Redis2.6.14部署记录 部署一个Redis作为缓存进行验证,记录部署过程. 官网:http://redis.io/,目前最近稳定版为2.6.14 解压,进入目录.按照READ ...
随机推荐
- (C/C++) 基础问答题
1.简述sizeof和strlen的区别 最常考察的题目之一.主要区别如下: 1)sizeof是一个操作符,strlen是库函数. 2)sizeof的参数可以是数据的类型,也可以是变量,而strlen ...
- [Java A] – is not an enclosing class
public class A {public class B { }}; 需要实例B类时,按照正逻辑是,A.B ab = new A.B();那么编译器就会出现一个错误–“is not an encl ...
- Shuffle相关分析
Shuffle描述是一个过程,表现出的是多对多的依赖关系.Shuffle是连接map阶段和Reduce阶段的纽带,每个Reduce Task都会从Map Task产生的数据里读取其中的一片数据.Shu ...
- 实现从sql server存取二进制图片
转:http://www.cnblogs.com/jeffwongishandsome/archive/2009/08/27/1554440.html 1.存取图片(1).将图片文件转换为二进制并直接 ...
- 命令行登录mysql报Segmentation fault错误是怎么回事
==========解决方法============在源码包里,编辑文件 cmd-line-utils/libedit/terminal.c把terminal_set方法中的 char buf[TC_ ...
- Android系统onKeyDown监控/拦截/监听/屏蔽返回键、菜单键和Home键
在Android系统中用来显示界面的组件(Component)为Activity,也就是说只有重写Activity的onKeyDown方法来监控/拦截/屏蔽系统的返回键(back).菜单键(Menu) ...
- MySQL的时间进位问题
mysql更新到5.6.4 之后 , 新增了一个叫factional seconds的特性 , 可以记录时间的毫秒值. 但是目前的数据库是不记录毫秒值的 , 所以会产生一个java中时间的Millis ...
- Log4j乱码
在log4j.properties里添加encoding , 例如 : log4j.appender.fuscent=org.apache.log4j.DailyRollingFileAppender ...
- 并发容器之ConcurrentSkipListSet
概要 本章对Java.util.concurrent包中的ConcurrentSkipListSet类进行详细的介绍.内容包括:ConcurrentSkipListSet介绍ConcurrentSki ...
- [ActionScript 3.0] AS3中的位图(BitmapData)应用
1.位图使用(模糊)滤镜 //创建一个矩形区域的BitmapData var bmd:BitmapData = new BitmapData(80, 30, false, 0xffffff); //画 ...