Docker搭建Portainer

1.介绍

Docker 图形化管理提供了很多工具,有Portainer、Docker UI、Shipyard等等,本文主要介绍Portainer。

Portainer是一个开源、轻量级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宿主机,则可使用单机版运行,Portainer单机版运行十分简单,只需要一条语句即可启动容器,来管理该机器上的docker镜像、容器等数据。

创建数据卷:

[root@linuxidc ~]# docker volume create portainer_data
portainer_data

运行容器:

[root@linuxidc ~]# docker run -d --name portainer  -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data docker.io/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

访问服务:

  • 访问方式:http://IP:9000 ,首次登录需要注册用户,给用户admin设置密码,如下图:

Docker轻量级图形页面管理Portainer安装配置

  • 单机版本选择“Local",点击Connect即可连接到本地docker,如下图:

Docker轻量级图形页面管理Portainer安装配置
注意:从上图可以看出,有提示需要挂载本地 /var/run/docker.socker与容器内的/var/run/docker.socker连接。因此,在启动时必须指定该挂载文件。

  • 进入后可以对容器、镜像、网络、数据卷等进行管理,如下图:

Docker轻量级图形页面管理Portainer安装配置

2.3集群运行

更多的情况下,我们会有一个docker集群,可能有几台机器,也可能有几十台机器,因此,进行集群管理就十分重要了,Portainer也支持集群管理,Portainer可以和Swarm一起来进行集群管理操作。首先要搭建了一个Swarm,本文不着重介绍swarm集群的安装。

portainer集群启动:

  • 启动集群参考官方文档:https://portainer.io/install.html

$ 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

  • 启动Portainer之后,首页还是给admin用户设置密码(这里和单机启动一样)。

Docker轻量级图形页面管理Portainer安装配置

  • 进入后,如下图所示会发现多了关于swarm的选项,其它配置和单机运行的portainer一样,都很简单:

Docker轻量级图形页面管理Portainer安装配置

  • Portainer的基本操作就这么多,具体的操作步骤还需要大家自己去学习理解。

3.参考链接

官方网站:https://portainer.io/
官方文档:https://portainer.readthedocs.io/
演示网址:http://demo.portainer.io 账号admin 密码 tryportainer

 

posted @ 2019-12-13 17:15  panchanggui  阅读(2864)  评论(0编辑  收藏  举报