【前置条件:需准备一台Linux or Mac OS 机器, 并且安装好了Docker 应用,因为是要监控与管理Docker,所以你得有Docker 运行环境,本示例以管理和监控K8s 集群中的Node 节点来分享(当然你也可以监控和管理你本地运行的docker)】
Step1:简介
Portainer是Docker的图形化管理工具,提供状态显示面板、应用模板快速部署、容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操作)、事件日志显示、容器控制台操作、Swarm集群和服务等集中管理和操作、登录用户管理和控制等功能。功能十分全面,基本能满足中小型单位对容器管理的全部需求。
Step2:启动服务
[root@qa-redis-03 ansible]#docker search portainer #查询当前有哪些Portainer镜像可供使用
[root@qa-redis-03 ansible]#more portainer.sh #查看启动脚本
docker run -d -p 9000:9000--restart=always -v /var/run/docker.sock:/var/run/docker.sock -v/etc/ansible/portainer_data:/data --name prtainer-test portainer/portainer
命令说明:
-d 表示后台运行此服务
-p 9000:9000表示将容器内的服务端口9000映射到宿主机上9000
--restart=always 容器的重启策略是在容器退出时总是重启容器
-v/var/run/docker.sock:/var/run/docker.sock :把宿主机的Docker守护进程(Dockerdaemon)默认监听的Unix域套接字挂载到容器中;
-v portainer_data:/data :把宿主机portainer_data数据卷挂载到容器/data目录;
--name prtainer-test 表示给容器设置一个名称,便于识别
portainer/portainer 表示是镜像的名称,此处一定要写对,否则会获取不到镜像,启动就会失败
[root@qa-redis-03 ansible]#shportainer.sh #启动镜像服务
备注说明:
此命令会优先从local(本地)镜像库中拉取对应镜像,如果本地仓库中找不到会从线上镜像仓库中心去拉取。
Step3:检验容器是否正常的运行
Step4:登录创建并配置
设置admin的登录密码
选择连接docker 的方式
此处有四个选择分别是:1. 连接本地。2. 连接远程其他机器【本示例选用这种】。3.连接Portainer 的代理。4. 连接微软的云环境。
此处有坑:当你连接Remote 时,由于远程node 机器未暴露出2375 的端口,所以连接时会报“portainer failure unable to ping docker environment”的错误,解决方案时:
Cd /etc/systemd/system
修改ExecStart如下所示:
ExecStart=/opt/kube/bin/dockerd -H unix:///var/run/docker.sock -Htcp://0.0.0.0:2375
最后:
systemctl daemon-reload
systemctl restart docker
再次去连接就可以了。
Step5:登录远程node 后展示如下
就讲到这里了,大家可以慢慢的去探索吧。