1.介绍
图形化管理提供了很多工具,有、 UI、Shipyard等等,本文主要介绍。
是一个开源、轻量级Docker管理用户界面,基于Docker API,提供状态显示面板、应用模板快速部署、容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操作)、事件日志显示、容器控制台操作、Swarm和服务等集中管理和操作、登录用户管理和控制等功能。功能十分全面,基本能满足中小型单位对容器管理的全部需求。
2.创建容器
2.1下载官方镜像
[root@ linuxidc /]# docker pull portainer/portainer Using default tag: latest latest: Pulling from portainer/portainer d1e017099d17: Pull complete ba5495c717cb: Pull complete Digest: sha256:8146a5aae1135a0ccee424488c6867b438be21d1e915903a858d12e8382b817b Status: Downloaded newer image for portainer/portainer:latest
2.2单机运行
如果仅有一个docker宿主机,则可使用单机版运行,单机版运行十分简单,只需要一条语句即可启动容器,来管理该机器上的docker镜像、容器等数据。
创建数据卷:
[root@linuxidc ~]# docker volume create portainer_data portainer_data
运行容器:
[root@linuxidc ~]# docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer 439cc8a6d44a84f5967534c50d3accc43fbeb578258a52c2683afeb230dd6e04
参数说明: -d:容器在后台运行; -p 9000:9000 :宿主机9000端口映射容器中的9000端口 -v /var/run/docker.sock:/var/run/docker.sock :把宿主机的Docker守护进程(Docker daemon)默认监听的Unix域套接字挂载到容器中; -v portainer_data:/data :把宿主机portainer_data数据卷挂载到容器/data目录;
查看容器进程:
[root@linuxidc ~]# docker ps -l CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 439cc8a6d44a portainer/portainer "/portainer" 13 seconds ago Up 13 seconds 0.0.0.0:9000->9000/tcp amazing_clarke
访问服务:
注意:从上图可以看出,有提示需要挂载本地 /var/run/docker.socker与容器内的/var/run/docker.socker连接。因此,在启动时必须指定该挂载文件。
2.3运行
更多的情况下,我们会有一个docker,可能有几台机器,也可能有几十台机器,因此,进行管理就十分重要了,也支持集群管理,Portainer可以和Swarm一起来进行集群管理操作。首先要搭建了一个Swarm,本文不着重介绍swarm集群的安装。
portainer集群启动:
$ docker service create --name portainer --publish 9000:9000 --replicas=1 --constraint 'node.role == manager' --mount type=bind,src=//var/run/docker.sock,dst=/var/run/docker.sock --mount type=bind,src=//opt/portainer,dst=/data portainer/portainer -H unix:///var/run/docker.sock