Portainer 可视化工具全解析:轻松管理 Docker 环境

news/2024/11/6 18:28:10/文章来源:https://www.cnblogs.com/o-O-oO/p/18521388

原创 acchen AC技术与生活

在当今的容器化技术浪潮中,Docker 无疑是一颗耀眼的明星。然而,对于许多开发者和运维人员来说,通过命令行管理 Docker 环境可能会显得有些繁琐和复杂。这时,Portainer 这款轻量级的可视化 Docker 管理平台就应运而生,为我们提供了一种更加便捷、高效的管理方式。

一、Portainer 是什么?

Portainer 是一款功能强大且轻量级的可视化 Docker 管理平台,它能够轻松地管理单机环境以及集群环境中的 Docker。无论是部署在 K8s、Docker 还是 Swarm 环境中,Portainer 都能游刃有余,并且一个平台就可以管理多个环境,为用户提供所有容器的统一视图,让我们可以清晰地掌控整个 Docker 生态系统。其官网为:(https://www.portainer.io/)。

二、Portainer 的安装

官方安装文档

在开始安装之前,我们可以参考官方安装文档:(https://docs.portainer.io/start/install-ce/server/docker/linux),这将为我们的安装过程提供详细的指导。

安装步骤

创建容器卷首先,我们需要创建一个容器卷,用于存储 Portainer 的数据。在命令行中执行:

docker volume create portainer_data

这一步骤将为后续的安装和数据存储做好准备。
运行容器接下来,运行 Portainer 容器。执行以下命令:

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 \portainer/portainer-ce:2.21.3

这个命令中的参数含义如下:

-d:表示在后台运行容器。
-p 8000:8000 -p 9443:9443:将容器内部的 8000 端口和 9443 端口映射到主机的相应端口,以便我们可以通过主机的 IP 地址和端口访问 Portainer。
--name portainer:为容器指定一个名称,方便后续管理。
--restart=always:设置容器在意外停止时自动重启。
-v /var/run/docker.sock:/var/run/docker.sock:将主机的 Docker 套接字挂载到容器内部,使容器能够与主机的 Docker 守护进程进行通信。
-v portainer_data:/data:将之前创建的容器卷挂载到容器的 /data 目录,用于存储 Portainer 的数据。

查看是否启动成功运行完容器后,我们可以通过以下命令查看容器是否启动成功:

[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
de5b28eb2fa9 portainer/portainer-ce:2.21.3 "/portainer" 11 seconds ago Up 9 seconds 0.0.0.0:8000->8000/tcp, :::8000->8000/tcp, 0.0.0.0:9443->9443/tcp, :::9443->9443/tcp, 9000/tcp portainer

如果看到类似的输出,说明 Portainer 容器已经成功启动。
访问成功启动容器后,我们可以通过访问地址:https://192.168.0.145:9443/ 来打开 Portainer 的界面。
需要注意的是,由于 Portainer 采用自签证书,访问时会报 SSL 错误,我们可以选择忽略该错误继续访问。
设置初始密码首次登录 Portainer 时,会要求我们设置初始密码。在登录页面输入用户名(默认为 admin)和密码,并确认密码后,点击“Create user”按钮即可完成初始密码的设置。

成功登录后,我们就可以查看到自己的实例,进入到 Portainer 的管理界面,在这里我们可以对 Docker 环境进行各种管理操作。

三、添加新的 Docker 主机到平台

假设我们现有一台主机 192.168.0.147,已经安装了 Docker 环境,我们希望通过 Portainer 来管理这台主机。

在 147 这台机器上安装代理在 147 这台机器的命令行中执行以下命令来安装 Portainer 代理:

docker run -d -p 9001:9001 --name portainer_agent --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/docker/volumes:/var/lib/docker/volumes portainer/agent:2.21.3

这个命令的作用是在 147 主机上启动一个 Portainer 代理容器,使其能够与我们之前部署的 Portainer 服务端进行通信。
在 Portainer 平台添加环境(主机)登录到 Portainer 平台,进入“Environments - Add environment”页面。
选择 Agent 并填写相关信息在添加环境页面,选择“Agent”,然后在“Environment details”处填入一个名称(例如:DockerHost147)和新主机的地址(192.168.0.147)。
查看新添加的主机添加完成后,回到首页,我们就可以看到新添加的 Docker 环境(主机),这样我们就可以在 Portainer 平台上统一管理多台 Docker 主机了。

四、Portainer 的主要功能

4.1 容器管理

在 Portainer 中,我们可以轻松地查看正在运行的容器、已停止的容器以及所有容器的详细信息。对于每个容器,我们可以进行启动、停止、重启等操作,还可以查看容器的日志、监控容器的资源使用情况,如 CPU 使用率、内存使用率等。此外,我们还可以通过简单的操作对容器进行参数调整,以满足不同的应用需求。

4.2 镜像管理

Portainer 提供了对 Docker 镜像的全面管理功能。我们可以查看本地和远程仓库中的镜像,进行镜像的拉取、推送和删除操作。同时,还可以对镜像进行标签管理,方便我们快速识别和使用不同版本的镜像。在镜像构建方面,Portainer 也提供了一定的支持,我们可以通过配置文件来构建自定义的镜像。

4.3 网络管理

对于 Docker 网络,Portainer 允许我们查看和管理不同类型的网络,包括 bridge 网络、overlay 网络等。我们可以创建新的网络、删除不需要的网络,以及对网络的参数进行调整。通过网络管理功能,我们可以更好地组织和隔离不同的容器,提高系统的安全性和可维护性。

4.4 卷管理

卷是 Docker 中用于数据持久化的重要机制。Portainer 使我们能够方便地管理容器卷,包括查看卷的使用情况、创建新的卷以及删除不再需要的卷。通过卷管理,我们可以确保容器中的数据在容器停止或删除后仍然得以保留,为数据的安全性提供了保障。

五、Portainer 的优势

5.1 可视化操作界面

相比传统的命令行管理方式,Portainer 的可视化界面更加直观、易于操作。无论是新手还是经验丰富的开发者和运维人员,都可以通过简单的点击和拖拽等操作完成各种管理任务,大大降低了学习成本和操作难度。

5.2 跨平台支持

Portainer 可以在多种操作系统上运行,包括 Linux、Windows 和 macOS。这使得我们可以在不同的平台上使用相同的工具来管理 Docker 环境,提高了工作效率和便利性。

5.3 轻量级部署

Portainer 本身是一个轻量级的应用程序,占用资源少,部署快速。无论是在小型开发环境还是大型生产环境中,都能轻松部署和使用,不会对系统性能造成太大的影响。

5.4 安全性保障

Portainer 提供了一定的安全机制,如用户认证、访问控制等。我们可以设置不同的用户角色和权限,确保只有授权的用户才能进行相应的管理操作,提高了系统的安全性。

六、同类工具对比

6.1 Rancher

Rancher 也是一款强大的容器管理平台,它支持多种容器编排引擎,如 Kubernetes、Docker Swarm 等。与 Portainer 相比,Rancher 的功能更加丰富和复杂,适合大型企业级应用场景。然而,对于一些小型项目或个人开发者来说,Rancher 可能过于庞大和复杂,学习成本较高。

6.2 Docker Compose

Docker Compose 是一个用于定义和运行多容器 Docker 应用程序的工具。它通过编写 YAML 配置文件来管理容器的启动和停止等操作。虽然 Docker Compose 也提供了一定的可视化管理功能,但相比 Portainer,它的功能相对较为简单,主要侧重于容器的编排和部署。

七、总结

Portainer 以其轻量级和可视化的特点,为我们管理 Docker 环境提供了极大的便利。无论是安装过程还是添加新主机的操作,都相对简单易懂。希望通过这篇文章的介绍,能让更多的开发者和运维人员了解并使用 Portainer,提升工作效率,更好地驾驭 Docker 环境。

项目地址

https://github.com/portainer/portainer

参考🔗

https://mp.weixin.qq.com/s/lcccxWcUF9e0ePGfpAhFKg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/827781.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PentesterTools:简单的SQLMap图形化辅助工具

原创 XiaoTouMingyo Hack分享吧免责声明 该公众号分享的安全工具和项目均来源于网络,仅供安全研究与学习之用,如用于其他用途,由使用者承担全部法律及连带责任,与工具作者和本公众号无关。工具介绍 SQLmap辅助工具是一款图形用户界面(GUI)工具,旨在简化和增强SQLmap的使…

【Xshell】高级用法: “隧道转发”

原创 大龙山悟道 IT运维不跑路xshell隧道转发类型 类型一:本地拨出 Local(Outgoing)作用:将本地计算机指定的某个端口连接到远程服务器的一个指定端口上。 应用场景:当从本地机器安全地访问位于远程服务器上的服务(如数据库、web服务等)时使用。 工作原理:通过SSH连接,用…

【安全运维】检测即代码(DAC) 详细步骤

原创 Zafkie1 SecLink安全空间引言 DAC(Detection As Code),检测即代码是一种战略方法,可将安全检测机制无缝集成到软件开发生命周期中。通过将安全控制视为代码,组织可以在整个SIEM运维过程中自动部署、配置和维护安全措施。 或许很多人听说过DAC的概念,但是并没有一步步地…

有道领世视频课程下载工具,如何在电脑端下载有道领世视频课程到本地?

一. 安装有道领世课程下载器 1.获取学无止下载器 https://www.xuewuzhi.cn/ydshengxue_downloader 2.下载安装后,然后点击桌面快捷方式运行即可。 注意:杀毒软件可能会阻止外部exe文件运行,并将其当做成病毒,直接添加信任即可,本软件绝对没有木马病毒。 二. 使用说明 1.学…

chapter15

relocation.py参数第一题问题用种子 1、2 和 3 运行,并计算进程生成的每个虚拟地址是处于界限内还是界限外?如果在界限内,请计算地址转换。 种子为1时:种子为2时:种子为3时:第二题问题使用以下标志运行:-s 0 -n 10。为了确保所有生成的虚拟地址都处于边界内,要将-l(界…

23设计模式详解

参考博客 https://baijiahao.baidu.com/s?id=1758410771062793648&wfr=spider&for=pc 设计模式(Design pattern) """ 对软件开发中【普遍存在(反复出现)的问题】,而提出的【解决方案】。每一个设计模式系统地命名、解释和评价了面向对象系统中一…

DearPyGui环境配置

DearPyGui 是一个基于Python的图形用户界面(GUI)工具包,它以简单易用而著称。这个库利用GPU加速渲染和高效的C/C++底层代码,确保了出色的性能和稳定性。DearPyGui支持异步函数,能够绘制大量数据点而不影响帧率,还内置了一个节点编辑器和实时开发调试工具。它适用于Window…

oasys系统代码审计

oasys是一个OA办公自动化系统,使用Maven进行项目管理,基于springboot框架开发的项目,mysql底层数据库,前端采用freemarker模板引擎,Bootstrap作为前端UI框架,集成了jpa、mybatis等框架。简述: oasys是一个OA办公自动化系统,使用Maven进行项目管理,基于springboot框架开…

科大讯飞离线lunix tts demo使用

项目中需要用到后台服务端用文本生成语音,网上大部分都是通过ai大模型推理出来的,还有写其他方式的,效果和生成时间都比较不理想,但是讯飞生成的只需要零点几秒,不愧是行业NO1,下面说下怎么使用。 1、下载官方demo。 2、在官方demo目录下,执行source 32bit_make.sh 或64…

高效数据集成:从旺店通到金蝶云

旺店通旗舰奇门数据集成到金蝶云星空:柏为销售出库单07.25 在现代企业的运营中,数据的高效流转和准确对接是确保业务顺畅运行的关键。本文将分享一个实际案例——如何通过轻易云数据集成平台,将旺店通旗舰奇门的数据无缝集成到金蝶云星空系统中。具体方案名称为“柏为销售出…

对比山海鲸报表和Tableau,哪款报表软件更好用?

在数据分析和报表制作的领域,企业往往面临着选择合适工具的难题。尤其是当市场上有很多功能强大的工具时,如何从中挑选出最适合自己需求的报表软件成为了一个关键问题。今天,我们将对比两款报表工具——山海鲸报表和Tableau,看看它们各自的特点和优势,帮助你做出明智的选择…

团子东子开奖了,这泼天的富贵!

秋招已经接近尾声了,最近各家公司的薪资也陆续公布了,今天在逛某客时,被一个 25 届 C9 硕的薪资羡慕到了,一起来感受下这泼天的富贵吧。 这个同学今年秋招总共拿到了 3 个 Offer,分别是:小米:28K*15,总包 45W,sp,北京。 美团:30K*15.5,总包 47W,sp,上海。 京东:…