docker容器监控服务portainer

Ubuntu上有一些流行的Docker容器监控服务,可以通过Web界面进行查看和管理。以下是一些常用的Docker容器监控工具:

  1. Portainer:Portainer是一个轻量级的Docker管理界面,提供了直观的Web界面来管理和监控Docker容器。它支持容器的创建、启动、停止、删除等操作,并提供了实时的容器状态和资源使用情况的监控。

  2. cAdvisor:cAdvisor是Google开源的一个用于监控容器资源使用情况的工具。它提供了一个Web界面,可以查看容器的CPU、内存、磁盘、网络等资源的使用情况,并提供了历史数据的图表展示。

  3. Prometheus:Prometheus是一个开源的监控和报警系统,可以用于监控Docker容器的各种指标。它提供了一个Web界面,可以查看容器的实时状态和指标,并支持自定义报警规则。

  4. Grafana:Grafana是一个开源的数据可视化工具,可以与Prometheus等监控系统集成,用于展示和分析监控数据。通过Grafana,可以创建仪表盘来展示Docker容器的各种指标和状态。

今天我们来介绍一下portainer这款软件。

portainer官网

https://github.com/portainer/portainer

安装教程:Install Portainer CE with Docker on Linux

dockerhub:portainer/portainer-ce

使用步骤

我在我们ubuntu20.04 158 arm盒子上测试

创建卷

docker volume create portainer_data

查看卷

docker volume ls

在这里插入图片描述

删除卷可用docker volume rm portainer_data

查看卷详细信息

docker volume inspect portainer_data

在这里插入图片描述

下载并run镜像

docker run -d -p 8000:8000 -p 9443:9443 -p 9000:9000 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest

在这里插入图片描述

查看容器

在这里插入图片描述

打开网页查看

192.168.1.158:9443

在这里插入图片描述

192.168.1.158:8000

在这里插入图片描述

192.168.1.158:9000

在这里插入图片描述

设置登录账号密码

密码要求最少12位,我设置成c***y***1234
在这里插入图片描述

哎呀,超时了

在这里插入图片描述

要重启下容器:

docker restart portainer

在这里插入图片描述

进入首页

然后重新刷新页面,设置密码并点击确认

然后进来了:

在这里插入图片描述

可能后台正在初始化,等一会就会显示这个(不行就直接点Get Started):

在这里插入图片描述

查看监控数据

所有环境列表

这里会显示所有添加的环境列表,我们已经有一个local环境了,通过这个环境,我们可以看到一些重要信息。

包括快照时间(last snapshot time),主机状态,环境类型,容器数量,容器状态,卷数量,镜像数量,CPU个数,总内存大小等。

在这里插入图片描述

Live Connect 和 Disconnect 按钮(指与正在运行的容器建立或断开实时连接的操作)
  1. Live Connect(实时连接):Live Connect允许与正在运行的容器建立实时的终端连接。通过实时连接,可以像在命令行中一样与容器进行交互,执行命令、查看日志等。这对于调试和排查容器中的问题非常有用。

  2. Disconnect(断开连接):Disconnect操作用于断开与容器的实时连接。当不再需要与容器进行交互时,可以选择断开连接,以释放资源并停止实时监控容器。

Dashboard 界面(可以看到环境的摘要信息)

在这里插入图片描述

Stacks界面(用于管理和部署Docker Compose或Kubernetes的堆栈)

通过使用"Stacks"界面,可以方便地管理和部署多个相关的服务和容器,实现应用程序的整体部署和管理。

在这里插入图片描述

关于"Stacks"堆栈

堆栈是一组相关的服务和容器,可以一起部署和管理。通过使用堆栈,您可以定义和配置多个容器、网络、存储卷等,并将它们作为一个整体进行部署和管理。

在Portainer.io的"Stacks"界面中,您可以执行以下操作:

  1. 创建堆栈:您可以通过上传Docker Compose文件或Kubernetes YAML文件来创建一个新的堆栈。这些文件定义了堆栈中的服务、容器、网络等配置。

  2. 部署堆栈:一旦创建了堆栈,您可以选择部署它。部署堆栈将会创建和启动堆栈中定义的所有服务和容器。

  3. 管理堆栈:在"Stacks"界面中,您可以查看和管理已经创建的堆栈。您可以查看堆栈的状态、启动或停止堆栈中的服务、查看服务的日志等。

Containers界面

这个界面把我们主机下的容器都给列出来了:

在这里插入图片描述

这个页面功能就很强大了,包括容器基本信息,映射端口,,,基本都有,而且还能查看容器日志、容器详细信息、资源使用情况,还能进入容器执行命令,等等功能。

容器操作:可以停止容器、强行kill容器、重启容器、暂停容器、删除容器等

在这里插入图片描述

容器日志:可以查看、筛选、跟踪、下载日志

在这里插入图片描述

容器详细信息

在这里插入图片描述

容器资源使用数据

在这里插入图片描述

命令交互(Exec Console)和"Attach Console"

Exec Console:
在这里插入图片描述

Attach Console搞不清楚干嘛用的🤐:

在这里插入图片描述

"Attach Console"和"Exec Console"有什么区别?(没太懂)
  1. Attach Console(附加终端连接):"Attach Console"操作是将终端连接附加到正在运行的容器上,以便与容器进行交互。它提供了一个实时的终端界面,可以直接在容器的命令行界面执行命令、查看日志等。

  2. Exec Console(执行终端命令):"Exec Console"操作是在容器中执行特定的终端命令,而不是直接附加终端连接。它允许您在容器中执行一次性的命令,而无需保持持久的终端连接。可以指定要执行的命令,并查看命令的输出结果。

区别在于,"Attach Console"提供了一个实时的终端连接,可以与容器进行交互,执行多个命令,并持续查看输出。而"Exec Console"只是执行一次性的命令,并返回命令的输出结果,不会保持持久的终端连接。

在Portainer.io的容器详情页面中,可以找到这两个功能的按钮。通过点击"Attach Console"按钮,可以附加终端连接到容器。通过点击"Exec Console"按钮,可以执行一次性的终端命令,并查看命令的输出结果。

镜像列表

在这里插入图片描述

网络列表

在这里插入图片描述

卷列表

在这里插入图片描述

事件列表(重大容器操作记录)

在这里插入图片描述

主机信息界面

在这里插入图片描述

容器特性配置

在这里插入图片描述

docker镜像源配置

在这里插入图片描述

其他问题

portainer支持环境(Docker Standalone、Docker Swarm、Kubernetes、ACI、Nomad等)介绍

portainer支持添加不同的环境,如图所示,下面分别介绍不同环境的功能。

在这里插入图片描述

这些环境之间的区别主要体现在功能和适用场景上。Docker Standalone适用于单个主机上的容器管理,Docker Swarm适用于小规模集群,Kubernetes适用于大规模集群,ACI适用于云平台上的容器服务,Nomad适用于多个主机上的容器编排和调度。

1. Docker Standalone

这是最基本的Docker环境,用于在单个主机上运行和管理容器。它提供了简单的命令行工具和图形界面,可以方便地创建、启动和停止容器。

2. Docker Swarm

这是Docker的原生集群管理工具,用于在多个主机上运行和管理容器。它提供了高可用性、负载均衡和容器编排等功能,可以将多个主机组成一个集群,实现容器的自动部署和扩展。

3. Kubernetes

这是一个开源的容器编排平台,用于在大规模集群中运行和管理容器。它提供了高可用性、自动扩展、服务发现和负载均衡等功能,可以实现容器的自动部署、弹性伸缩和故障恢复。

4. ACI(Azure Container Instances)

这是微软Azure云平台上的容器服务,用于在云上运行和管理容器。它提供了简单的命令行工具和图形界面,可以方便地创建、启动和停止容器,无需管理底层的虚拟机。

5. Nomad

这是HashiCorp公司开发的容器编排和调度工具,用于在多个主机上运行和管理容器。它提供了高可用性、负载均衡和容器编排等功能,可以将多个主机组成一个集群,实现容器的自动部署和扩展。

portainer的卸载

以下容器名称填你自己的portainer容器名,卷名填你自己的portainer卷名:

  • 停止容器
docker stop kyai_portainer
  • 删除容器
docker rm kyai_portainer
  • 删除卷
docker volume rm portainer_data
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐