Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。
Docker虽然比较完美,但是美中不足的是:运行Docker容器和管理它们可能会花费一点点努力和时间。这个时候基于web的应用程序应运而生:dockerUI,shipyard等等。它们可以让管理和运行容器变得很简单。
一、简介
通过Web用户界面,你可以大致浏览相关信息,比如你的容器在使用多少处理器和内存资源、在运行哪些容器,还可以检查所有集群上的事件日志。
----------------------------dockerUI---------------------------
功能:通过Web浏览器可视化管理docker的相关信息,提供等同Docker命令行的大部分功能。
优点:
1)可以对运行着的容器进行批量操作
2)界面简洁,设计华丽
3)在容器网络中-会显示容器与容器间的网络关系
4)在Volumes中显示了所有挂载目录
5)就单台主机而言,dockerui是一款不错的管理工具。
缺点:
1)不支持多主机
-----------------------------shipyard--------------------------
功能:简化对横跨多个主机的Docker容器集群进行管理
优点:
1)支持节点动态集群,可扩展节点的规模(swarm、etcd方案)
2)支持镜像管理、容器管理、节点管理等功能
3)可视化的容器管理和监控管理
4)在线容console终端
缺点:
1)不太稳定,部署或者安装成功的images或者container在shipyard上不显示。
二、安装步骤
1、dockerUI
1)拉取dockerUI镜像。
[root@bogon ~]# docker pull uifd/ui-for-docker
Using default tag: latest
latest: Pulling from uifd/ui-for-docker
841194d080c8: Pull complete
Digest: sha256:fe371ff5a69549269b24073a5ab1244dd4c0b834cbadf244870572150b1cb749
Status: Downloaded newer image for uifd/ui-for-docker:latest
[root@bogon ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
uifd/ui-for-docker latest 965940f98fa5 16 months ago 8.1MB
2)启动dockerUI容器。
[root@bogon ~]# docker run -it -d --name docker-web -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock docker.io/uifd/ui-for-docker
4257409fb5d9c12ee417bca1633145857678620f60ca390f2a5923ed38ffccec
[root@bogon ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
4257409fb5d9 uifd/ui-for-docker "/ui-for-docker" 4 seconds ago Up 4 seconds 0.0.0.0:9000->9000/tcp docker-web
3)启动防火墙9000端口
[root@localhost ~]# vim /etc/sysconfig/iptables
......
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9000 -j ACCEPT
[root@localhost ~]# systemctl restart iptables.service
注意:如果没有iptables,则安装
[root@bogon ~]# yum install iptables-services
如果没有vim,则安装
[root@bogon ~]# yum -y install vim
4)效果
2、shipyard
1)直接执行安装命令:curl -sSL https://shipyard-project.com/deploy | bash -s
[root@localhost ~]# curl -sSL https://shipyard-project.com/deploy | bash -s
Deploying Shipyard
-> Starting Database
Unable to find image 'rethinkdb:latest' locally
Trying to pull repository xxx.mirror.aliyuncs.com/rethinkdb ...
Pulling repository xxx.mirror.aliyuncs.com/rethinkdb
Trying to pull repository docker.io/library/rethinkdb ...
latest: Pulling from docker.io/library/rethinkdb
Digest: sha256:29640c7d5015832c40305ad5dcc5d0996ce79b87f7e32d2fd99c9d65ad9414d4
-> Starting Discovery
-> Starting Cert Volume
-> Starting Proxy
-> Starting Swarm Manager
-> Starting Swarm Agent
-> Starting Controller
Waiting for Shipyard on 192.168.233.128:8080
Shipyard available at http://192.168.233.128:8080
Username: admin Password: shipyard
至此,已经安装完成,访问地址:http://localhost:8080,默认的用户名:admin,密码:shipyard
可以查看一下docker images
三、推荐&心得
1、推荐网站
shipyard官网:https://www.shipyard-project.com/docs/deploy/automated/
2、心得
1)事物都有两面性,在一方面突出,必然在另一方面缺失。找到自己需要的,符合自己要求的最重要。
2)思想不要太狭隘,多查查,多看看,能收获更多。