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华为云有活动,赶紧行动起来吧!

相关推荐
汀、人工智能18 分钟前
修改Docker默认存储路径,解决系统盘占用90%+问题(修改docker root dir)
docker·容器
吃面不喝汤6643 分钟前
如何配置和使用自己的私有 Docker Registry
运维·docker·容器
Leighteen1 小时前
Docker常用命令
docker·容器
丶21361 小时前
【Nginx】在 Docker 上安装 Nginx 的详细指南
运维·nginx·docker
codelife3211 小时前
在Docker容器中执行命令
容器
petaexpress2 小时前
常用的k8s容器网络模式有哪些?
网络·容器·kubernetes
m0_741768858 小时前
使用docker的小例子
运维·docker·容器
最新小梦11 小时前
Docker日志管理
运维·docker·容器
ZHOU西口12 小时前
微服务实战系列之玩转Docker(十五)
nginx·docker·微服务·云原生·swarm·docker swarm·dockerui
lgbisha13 小时前
828华为云征文|华为云Flexus X实例docker部署最新Appsmith社区版,搭建自己的低代码平台
低代码·docker·华为云