终于把shipyard弄好了。
我也是根据shipyard的官方文档,做的。在刚开始的时候觉得好难,也遇到了困难,查看了好多文档
但做完之后发现,只需要几步就能简单的配置成功,就能运行了。
修改tcp监听(配置运行端口,docker服务需stop)
Shipyard 要管理和控制 Docker host 的话需要先修改 Docker host 上的默认配置使其监听tcp端口(可以继续保持Unix socket)。有以下3种方式
- sudo docker -H tcp://0.0.0.0:4243 -H unix:///var/run/docker.sock -d启动docker daemon。如果为了避免每次启动都写这么长的命令,可以直接在/etc/init/docker.conf中修改。我配的docker没有docker.conf文件
- 修改/etc/default/docker的DOCKER_OPTS
DOCKER_OPTS="-H tcp://127.0.0.1:4243 -H unix:///var/run/docker.sock"。这种方式在我没有运行成功 nohup /usr/bin/docker
-d -H tcp:
//0
.0.0.0:4243 -H unix:
///var/run/docker
.sock >>
/dev/null
2>&1 &
然后只需要运行官方文档中的命令
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock shipyard/deploy start
然后系统就会自动安装shipyard所需要的镜像.等安装完成,会出现:
Shipyard Stack started successfully
Username: admin Password: shipyard
就能在浏览器中打开了
http://localhost:8080 登录的账号密码,上边已经给出了,账户:admin 密码:shipyard
但是我登录上浏览器的时候只能Engines这个选项页,我开始的时候以为我配置错了。但是我查看了好多文档,也都是这个运行结果。那肯定就是配置的问题了。
其他都还好说,只是在输入 Address的时候,总觉得不对,最好添加的时候,果然那出错误了。又看了看shipyard的使用文档。原来最重要的监听端口的是用在这的。要写成http://IP:4243
然后就能看到这个IP主机的所有容器了。
需要注意的是当要监听其他服务器上的容器是,也需要在其上配置监听端口4243,否则添加不上(配置运行端口,docker服务需stop)。
当然你也可以手动的启动各个容器
Start an data volume instance of RethinkDB:
docker run -it -d --name shipyard-rethinkdb-data --entrypoint /bin/bash shipyard/rethinkdb -l
Start RethinkDB with using the data volume container:
docker run -it -P -d --name shipyard-rethinkdb --volumes-from shipyard-rethinkdb-data shipyard/rethinkdb
Start the Shipyard controller:这个容器要最后启动
docker run -it -p 8080:8080 -d --name shipyard --link shipyard-rethinkdb:rethinkdb shipyard/shipyard