您的位置:首页 > 运维架构 > Docker

[开源夏令营][二] Docker 环境搭建

2014-07-14 10:56 337 查看

Docker 安装

在不同发行版上面如何安装,官方的文档写得很明白了(点此传送

在这里,就以我使用的是 ubuntu-server 14.04 为例,介绍下在这个系统下面的安装

首先是Docker仓库公钥:

$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9


然后添加Docker仓库源:

$ sudo sh -c "echo deb https://get.docker.io/ubuntu docker main\
> /etc/apt/sources.list.d/docker.list"
$ sudo apt-get update
$ sudo apt-get install lxc-docker


cURL 安装

这个是进行模拟http请求的好工具,在ubuntu下:

$ sudo apt-get install curl


python 安装

python是我在前期研究中用来格式化返回的json字符串的,在ubuntu中python是默认安装的。

nginx 安装与配置

$ sudo apt-get install nginx


安装完以后,我们需要设置一下反向代理。我是在配置文件里面加入了这样一段代码。

location /docker/ {
proxy_pass http://unix:/var/run/docker.sock:/; }


加了这段代码一般来说,直接运行会报 50X 的错误,因为nginx并没有权限访问docker.sock。在ubuntu上,我们需要把nginx加入到docker的组中。其他发行版只要类似解决权限问题即可。

除了这种对 UNIX socket的反向代理这种方法外,可以让 docker 自己监听 TCP,然后 nginx 反向代理 TCP 连接。方法是在 docker daemon启动参数中加入:

-H tcp://0.0.0.0:2375


这又是一个不同发行版都不一样的地方,ubuntu 修改 /etc/default/docker 文件,DOCKER_OPTS="-H tcp://0.0.0.0:4243 -H unix://var/run/docker.sock" , archlinux 中在启动的service的docker命令后面直接添加。
不过,既然直接监听了,也可以不使用nginx进行代理。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: