一、Shipyard安装
1.拉取 Shipyard 相关镜像
docker pull shipyard/shipyard
docker pull swarm
docker pull shipyard/docker-proxy
docker pull alpine
docker pull microbox/etcd
docker pull rethinkdb
2.镜像概述
| 镜像名称 | 运行服务 | 描述 |
|---|---|---|
| rethinkdb | shipyard数据库 | 一个NoSQL数据库,用于存储shipyard系统的数据,比如账号、节点、容器等信息 |
| microbox/etcd | 服务注册、发现系统 | K/V存储系统,用于Swarm节点实现服务注册、发现;也支持consul、zookeeper |
| shipyard/docker-proxy | docker API代理 | 连接本地/var/run/docker.sock代理,用于让Swarm Agent连接API管理 |
| swarm | swarm集群 | 官方管理Docker集群工具,使得多个engine为一个整体管理,对外提供Swarm manager API,用户就像操作单台Engine一样 |
| shipyard/shipyard | shipyard前端 | 容器Web管理系统,内部连接Swarm Manager管理容器和RethinkDB存储数据 |
3.构建Shipyard容器
docker run -ti -d --restart=always --name shipyard-rethinkdb rethinkdb
docker run -ti -d -p 4001:4001 -p 7001:7001 --restart=always --name shipyard-discovery microbox/etcd -name discovery
docker run -ti -d -p 2375:2375 --hostname=$HOSTNAME --restart=always --name shipyard-proxy -v /var/run/docker.sock:/var/run/docker.sock -e PORT=2375 shipyard/docker-proxy
docker run -ti -d --restart=always --name shipyard-swarm-manager swarm manage --host tcp://0.0.0.0:3375 etcd://<local-ip>:4001
docker run -ti -d --restart=always --name shipyard-swarm-agent swarm join --addr <local-ip>:2375 etcd://<local-ip>:4001
docker run -ti -d --restart=always --name shipyard-controller --link shipyard-rethinkdb:rethinkdb --link shipyard-swarm-manager:swarm -p 8083:8080 shipyard/shipyard server -d tcp://swarm:3375
访问http://<local-ip>:8083
默认账号密码: admin/shipyard
二、Portainer安装
官方安装手册:https://portainer.readthedocs.io/en/stable/deployment.html
官网: https://www.portainer.io/
- 安装命令
注意: 1. admin-password 为bcrypt加密,这里是123;
2. mount type=bind,src=/opt/soft/portainer/data,dst=/data 挂载宿主机目录为了持久化数据,避免每次重启重新配置
$ docker service create \
--name portainer \
--publish 9999:9000 \
--constraint 'node.role == manager' \
--mount type=bind,src=/var/run/docker.sock,dst=/var/run/docker.sock \
--mount type=bind,src=/opt/soft/portainer/data,dst=/data \
portainer/portainer \
--admin-password='$2a$10$O2p6iJ8vG.4gyaXY5TPgDu4xEwB1SCy.KDaAzMBnZjLiq5UpdamzC' \
-H unix:///var/run/docker.sock
[root@master ~]# docker images |grep portainer
docker.io/portainer/portainer <none> 2b4ddf654e1c 11 days ago 77.7 MB
[root@master ~]# docker service ls
ID NAME MODE REPLICAS IMAGE
tsoe55fla4ce portainer replicated 1/1 portainer/portainer:latest
浏览器输入http://<ip-host>:9000进入该UI界面
admin/123
portainer可以参考博客,很详细: https://blog.51cto.com/bovin/2170723









网友评论