欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

详解MAC OSX Docker开发环境搭建

程序员文章站 2023-11-02 09:21:40
mac osx  docker 开发环境搭建 1. 安装virtualbox 下载地址: virtualbox简体中文版下载安装(图解教程) 2....

mac osx  docker 开发环境搭建

1. 安装virtualbox 下载地址:

virtualbox简体中文版下载安装(图解教程)

2. 安装boot2docker

$ brew install boot2docker

# 也可以手工安装: 
$ curl https://raw.github.com/steeve/boot2docker/master/boot2docker > boot2docker; chmod +x boot2docker; sudo mv boot2docker /usr/local/bin

3. 安装docker

$ brew install docker

# 也可以手工安装:
$ curl -o docker http://get.docker.io/builds/darwin/x86_64/docker-latest; chmod +x docker; sudo cp docker /usr/local/bin

4. 配置docker客户端

# 如果环境没有设置,运行boot2docker up时会有修改环境变量的建议
$ boot2docker up
waiting for vm and docker daemon to start...
.o
started.
writing /xxx/.boot2docker/certs/boot2docker-vm/ca.pem
writing /xxx/.boot2docker/certs/boot2docker-vm/cert.pem
writing /xxx/.boot2docker/certs/boot2docker-vm/key.pem

to connect the docker client to the docker daemon, please set:
 export docker_cert_path=/your/path/.boot2docker/certs/boot2docker-vm
 export docker_tls_verify=1
 export docker_host=tcp://192.168.888.888:2376
# 把最后三条加到~/.bash_profile即可

5. boot2docker初始化与启动

$ boot2docker init
# 完成后就能在 virtualbox 中看到一个叫做 boot2docker-vm 的虚拟机,以后只需用 boot2docker 命令来控制这个虚拟机的行为,启动,停止等.

$ boot2docker up
# 启动,boot2docker-vm 虚拟机,我们能在 virtualbox 中看到该虚拟机变成 running 状态

# 直接执行 boot2docker 可以看到可用的参数
usage /usr/local/bin/boot2docker {init|start|up|save|pause|stop|restart|status|info|delete|ssh|download}

6. 启动docker守护进程

$ sudo docker -d

# 这时可执行
$ boot2docker ssh

7. 加载镜像

# 首先下载镜像文件
$ wget http://10.10.888.888:8001/www-v4.0.tar

# 导入到本地镜像仓库
$ docker load -i /path/to/www-v4.0.tar

# 改镜像名
$ docker tag c39e2433999 www:v4.0

# 启动
$ docker run --privileged -it --rm -v /your/home/path/:/home/webroot -p 80:8000 www:v4.0 /bin/bash
# 你本地目录/your/home/path映射到docker容器的/home/web/root, 并且他们端口对应是80:8000

8. 测试

# 测试之前在本地目录下建立相应的可执行文件.
# 并修改本地hosts, 例如要绑定es.web.com这个域名
$ boot2docker ssh
$ ifconfig
...
# 获得ip后返回本地绑定hosts

# 测试
$ curl -i http://es.web.com/
# 返回数据说明成功了

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。