Docker的WEB管理界面shipyard

Docker 的命令行就已经很好用了,若是非要加上基于 Web 的管理界面的话也有一些选择,如 DockerUI (Angular.js), Dockland (Ruby), Shipyard (Python/Django) 等,不过目前来看 Shipyard 项目要活跃一点,Shipyard 支持多 host,能够把多个 Docker host 上的 containers 统一管理;能够查看 images,甚至 build images;并提供 RESTful API 等等。 python

Shipyard 要管理和控制 Docker host 的话须要先修改 Docker host 上的默认配置使其支持远程管理。修改配置文件 docker.conf,把 /usr/bin/docker -d 这行加上 -H tcp://0.0.0.0:4243 -H unix:///var/run/docker.sock 参数: git

$ sudo vi /etc/init/docker.conf
description     "Run docker"

start on filesystem or runlevel [2345]
stop on runlevel [!2345]

respawn

script
    /usr/bin/docker -d -H tcp://0.0.0.0:4243 -H unix:///var/run/docker.sock
end script



能够独立安装 Shipyard 也能够把 Shipyard 安装在一个 Docker 容器里。若是有人提供了 Docker 镜像甚至连安装的过程也省了,直接下载运行就能够了,Shipyard 的做者就提供了这么一个镜像(须要注意的是这里的默认登陆用户名和密码是 admin/shipyard):
$ sudo docker pull shipyard/shipyard

$ sudo docker run -i -t -d -p 80:80 -p 8000:8000 shipyard/shipyard



若是不想使用上面的 Docker 镜像,想直接安装在服务器上的话也不是很麻烦,能够自行设置登陆用户名和密码:
$ git clone https://github.com/shipyard/shipyard.git
$ cd shipyard/

$ sudo pip install -r requirements.txt
$ sudo python manage.py syncdb --noinput
$ sudo python manage.py migrate
$ sudo python manage.py createsuperuser
Username (leave blank to use 'root'):admin
Email address: test@vpsee.com
Password:
Password (again):
Superuser created successfully.

$ sudo python manage.py runserver 0.0.0.0:8000
Validating models...

0 errors found
November 15, 2013 - 03:46:23
Django version 1.6, using settings 'shipyard.settings'
Starting development server at http://0.0.0.0:8000/
Quit the server with CONTROL-C.



开另外一个终端或 ssh 会话输入如下命令:
$ sudo python manage.py celery worker -B --scheduler=djcelery.schedulers.DatabaseScheduler -E



安装成功后打开浏览器访问 http://192.168.0.211:8000/ 就能够看到登陆界面,输入用户名和密码登陆成功后到左边的 Hosts 里添加一个 Docker host,输入 Docker host 的 IP 地址就能够了:


参考:http://www.vpsee.com/2013/11/shipyard-a-docker-web-ui/ github

我是直接下镜像作的,在本机安装的时候老是保python错误,本人看不懂,就用最省事的镜像作的。由于不是源码安装,因此没有docker.conf文件,就直接kill掉docker进程,而后直接用: web

/usr/bin/docker -d -H tcp://0.0.0.0:4243 -H unix:///var/run/docker.sock >> /dev/null 2>&1 &
启动,再执行上面的镜像安装就ok了。折腾了半天总搞定了。记住:访问时必定是Docker host:8000端口。
相关文章
相关标签/搜索