828华为云征文 | 在Flexus X实例上部署Portainer,实现Docker可视化管理

Docker轻量级可视化工具 Portainer

需要了解

  • 本文章主要讲述在 华为云Flexus X 实例上通过docker技术搭建开源的容器管理平台,使用的Web UI界面来简化和优化容器及集群的管理和监控
  • 选择合适的云服务器: 本文采用的是 华为云服务器 Flexus X 实例(推荐使用)
  • 连接方式: 本文通过本地shell 方式,通过弹性IP 远程连接至服务器,进行部署搭建
  • 操作系统版本: Huawei Cloud EulerOS 2.0
  • Docekr版本: Docker v27.1.1
  • Portainer版本: portainer/portainer-ce:latest
  • 服务器购买链接: 华为云服务器 Flexus X 实例
    Docekr搭建可参考文章: 华为FlexusX与Docker+Nginx的高效整合之路
  • 详细购买配置实例可参考文章: 快速部署华为云Flexus X实例,开启您的云端之旅
  • 部署期间所需资料文件都可私信进行获取

Portainer介绍

Portainer是一款开源的容器管理平台,它支持多种容器技术,包括Docker、Kubernetes和Swarm等,旨在通过提供易于使用的Web UI界面来简化和优化容器及集群的管理和监控。

官方网站:

https://www.portainer.io/

https://docs.portainer.io/v/ce-2.9/start/install/server/docker/linux

Portainer部署在华为云Flexus x实例上的优势

高性能支持:Flexus X实例的柔性算力和X-Turbo加速技术,为Portainer提供强大性能,确保容器管理高效流畅。

灵活资源配置:Flexus X支持自定义规格和智能变更,使Portainer能按需灵活调配资源,优化容器管理。

高稳定性与可靠性:Flexus X的高可用性和智能调度技术,保障Portainer稳定运行,应对高并发和流量波动。

简化操作流程:Flexus X的一键操作和开箱即用特性,简化Portainer的部署与管理,降低操作门槛。

广泛应用场景支持:Flexus X支持多行业应用场景,与Portainer集成提供定制化解决方案,满足复杂业务需求。

安装Portainer

创建卷

首先创建Portainer Server 用于存储数据库的卷

bash 复制代码
[root@flexusx-251f ~]# docker volume create portainer_data
portainer_data
[root@flexusx-251f ~]# docker volume ls
DRIVER    VOLUME NAME
local     portainer_data

拉取镜像

  1. 如果网络能通,可以直接进行拉取
bash 复制代码
[root@flexusx-251f ~]# docker pull portainer/portainer-ce:latest
  1. 如果因为网络问题而导致不能成功拉取镜像,可以进行手动导入(如果需要镜像,可私信获取)
bash 复制代码
[root@flexusx-251f ~]# mkdir /images
[root@flexusx-251f ~]# cd /images/
[root@flexusx-251f images]# ls
portainer.tar

[root@flexusx-251f ~]# docker load -i portainer.tar
  1. 因为我之前把相应镜像上传到了华为云容器镜像服务,所以说可以直接从华为云进行拉取(本实例采用)
bash 复制代码
# 登录华为云镜像仓库
[root@flexusx-251f ~]# docker login -u cn-north-4@LC81GEZX22YI6P43AAIO -p e4922f5086ef78361d65f46cfd00888fb4ef1a64773cc6fa7764aebb126d4aaa swr.cn-north-4.myhuaweicloud.com
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credential-stores

Login Succeeded

# 拉取镜像
[root@flexusx-251f ~]# docker pull swr.cn-north-4.myhuaweicloud.com/cloud-wzs/portainer/portainer-ce:latest
latest: Pulling from cloud-wzs/portainer/portainer-ce
0ea73420e2bb: Pull complete
c367f59be2e1: Pull complete
b71b88d796e2: Pull complete
Digest: sha256:e6c1ef4ccdc0f3cf2d15e6425e64176002196e5391b689baeee056f4bdd12f83
Status: Downloaded newer image for swr.cn-north-4.myhuaweicloud.com/cloud-wzs/portainer/portainer-ce:latest
swr.cn-north-4.myhuaweicloud.com/cloud-wzs/portainer/portainer-ce:latest

[root@flexusx-251f ~]# docker images
REPOSITORY                                                          TAG       IMAGE ID       CREATED       SIZE
swr.cn-north-4.myhuaweicloud.com/cloud-wzs/portainer/portainer-ce   latest    0df02179156a   2 years ago   273MB
mysql                                                               5.7       87eca374c0ed   3 years ago   447MB
wordpress                                                           latest    bfcb59709143   3 years ago   550MB
mysql                                                               latest    8457e9155715   3 years ago   546MB
nginx                                                               latest    298ec0e28760   3 years ago   133MB
[root@flexusx-251f ~]#

运行容器

  • -p 8000:8000: 将容器的 8000 端口映射到宿主机的 8000 端口,通常用于 HTTP 流量。
  • -p 9443:9443: 将容器的 9443 端口映射到宿主机的 9443 端口,通常用于 HTTPS 流量。
  • -v /var/run/docker.sock:/var/run/docker.sock: 将宿主机的 Docker 守护进程 socket 挂载到容器内,这样 Portainer 就可以管理 Docker 容器了。
bash 复制代码
[root@flexusx-251f ~]# docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data swr.cn-north-4.myhuaweicloud.com/cloud-wzs/portainer/portainer-ce:latest
3a888d70efa694e8fff41e6506bb24da3292a9e274b1149457983821d794bac3

# 查看容器
[root@flexusx-251f ~]# docker ps | grep port
3a888d70efa6   swr.cn-north-4.myhuaweicloud.com/cloud-wzs/portainer/portainer-ce:latest   "/portainer"             17 seconds ago   Up 16 seconds   0.0.0.0:8000->8000/tcp, :::8000->8000/tcp, 0.0.0.0:9443->9443/tcp, :::9443->9443/tcp, 9000/tcp   portainer

登录

安装成功后,直接通过本地地址加端口号即可访问

https://localhost:9443

放行安全组

因为需要通过8000和9443两个端口进行访问,我们需要配置相应规则

访问成功

初始化配置

创建用户

第一个用户将是管理员,用户名默认为 admin ,可根据自身需求修改,并设置自己的密码

admin / 123456789

登录成功

查看本地docker信息

选择local选项卡后 本地docker详细信息展示

显示 Docker 磁盘使用情况,提供了可视化管理

使用命令行进行查看

bash 复制代码
[root@flexusx-251f ~]# docker system df
TYPE            TOTAL     ACTIVE    SIZE      RECLAIMABLE
Images          5         3         1.88GB    609.8MB (32%)
Containers      3         3         6B        0B (0%)
Local Volumes   1         1         69.07kB   0B (0%)
Build Cache     0         0         0B        0B

创建一个容器进行测试

点击左侧导航栏,Containers,点击Add container

可根据自身需求,选择对应配置

可以看到我们的容器创建成功,相比命令行方式,确实简化了不少操作

从底层进行查看

bash 复制代码
# 正在正常运行
[root@flexusx-251f ~]# docker ps -a | grep hell
2370f80be54e   nginx:latest                                                               "/docker-entrypoint...."   About a minute ago   Up About a minute   80/tcp                                                                                           hello

也可以在web界面进行停止、移除等操作

总结

Portainer为华为云Flexus X实例提供了直观易用的Docker容器管理界面,极大地简化了Docker容器的部署、管理和监控过程。Flexus X实例的高性能与灵活性确保了Portainer的稳定运行,同时其智能优化特性帮助降低了运行成本。通过Portainer,用户可以轻松实现容器的可视化操作,提高运维效率,加速应用部署,是华为云用户管理Docker容器的理想选择。现在8.28华为云有活动,赶紧行动起来吧!

相关推荐
南猿北者6 小时前
Docker Volume
运维·docker·容器
网络研究院7 小时前
Am I Isolated:一款安全态势基准测试工具
容器·工具·基准测试·安全态势
涔溪8 小时前
Docker简介
spring cloud·docker·eureka
内核程序员kevin9 小时前
在Linux环境下使用Docker打包和发布.NET程序并配合MySQL部署
linux·mysql·docker·.net
kayotin10 小时前
Wordpress博客配置2024
linux·mysql·docker
颜淡慕潇11 小时前
【K8S问题系列 | 9】如何监控集群CPU使用率并设置告警?
后端·云原生·容器·kubernetes·问题解决
运维&陈同学11 小时前
【模块一】kubernetes容器编排进阶实战之k8s基础概念
运维·docker·云原生·容器·kubernetes·云计算
信子姚青11 小时前
K8s使用nfs
容器
葡萄皮Apple11 小时前
[CKS] K8S RuntimeClass SetUp
java·容器·kubernetes
mit6.82412 小时前
[Docker#4] 镜像仓库 | 部分常用命令
linux·运维·docker·容器·架构