Docker GUI工具-Portainer浅析

简介: Portainer是一款免费、开源的Docker的图形化管理工具,其能够提供状态显示面板、应用模板快速部署、容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操作)、事件日志显示、容器控制台操作、Swarm集群和服务等集中管理和操作、登录用户管理和控制等功能。功能十分全面,基本能满足中小型单位对容器管理的全部需求。

  Portainer是一款免费、开源的Docker的图形化管理工具,其能够提供状态显示面板、应用模板快速部署、容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操作)、事件日志显示、容器控制台操作、Swarm集群和服务等集中管理和操作、登录用户管理和控制等功能。功能十分全面,基本能满足中小型单位对容器管理的全部需求。

  Portainer具有以下优点:

       1、支持容器管理、镜像管理。

       2、轻量级,消耗资源少。

       3、基于docker api,安全性高,可指定docker api端口,支持TLS证书认证。

       4、支持权限分配、集群。

   如果是针对中大企业规模的业务需求,则可能需要对其进行2次开发,以满足实际的维护需求。

  以下为其安装部署相关操作:

  查看Portainer相关镜像源,当然,我们也可以基于源码进行编译制作。


[administrator@JavaLangOutOfMemory luga ]% docker search portainer
NAME                                DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
portainer/portainer                 This Repo is now deprecated, use portainer/p…   2010                 
portainer/portainer-ce              Portainer CE - Making Docker and Kubernetes …   284                  
portainer/agent                     An agent used to manage all the resources in…   87                   
portainer/templates                 App Templates for Portainer http://portainer…   20                   
lihaixin/portainer                  docker ui                                       15                   [OK]
greenled/portainer-stack-utils      Bash scripts to deploy/undeploy stacks in a …   6                    [OK]
portainer/portainer-k8s-beta        Portainer for Kubernetes BETA                   4                    
portainer/golang-builder            Utility to build Golang binaries.               4                    [OK]
portainerci/portainer               Portainer images automatically created via P…   4                    
hassioaddons/portainer                                                              2                    
portainer/base                      Multi-stage build image to create the Portai…   2                    [OK]
hassioaddons/portainer-armv7                                                        1                    
softonic/portainer-endpoint         Allows auto register all the swarm nodes in …   1                    [OK]
thibaudlabat/portainer_32           Portainer built for 32bit Linux [ OUTDATED ]…   1                    
iconviet/portainer                                                                  0                    
helloysd/portainer                                                                  0                    
11384eb/portainer                                                                   0                    
hassioaddons/portainer-amd64                                                        0                    
portainerci/agent                   Portainer agent images automatically created…   0                    
nenadilic84/portainer                                                               0                    
rancher/portainer-agent                                                             0                    
agiper/portainer                                                                    0                    
portainer/agent-k8s-beta            Portainer for Kubernetes BETA (agent)           0                    
portainer/portainer-ee              Portainer EE - Making Docker and Kubernetes …   0                    
johnvmt/portainer-ecr-credentials   Periodically updates the credentials Portain…   0                    [OK]

       编写docker-compose.yaml文件,当然,也可以直接用Docker直接启动。


[administrator@JavaLangOutOfMemory luga ]% vi docker-compose-portainer.yaml
version: '3'
services:
  portainer:
    image: portainer/portainer:latest                             # 镜像名称
    container_name: portainer                                     # 容器名为'portainer'
    restart: always                                               # 指定容器退出后的重启策略为:始终重启
    volumes:                                                      # 数据卷挂载路径设置,将本机目录映射到容器目录
      - "/var/run/docker.sock:/var/run/docker.sock"
      - "./portainer/data:/data"
      - "./portainer/Portainer-CN:/public"   # 汉化
    environment:                        # 设置环境变量,相当于docker run命令中的-e
      TZ: Asia/Shanghai
      LANG: en_US.UTF-8
    ports:                              # 映射端口
      - "9000:9000"

   执行启动命令,然后进行镜像的拉取,容器的运行。


[administrator@JavaLangOutOfMemory luga ]% docker-compose -f docker-compose-portainer.yaml up -d
WARNING: Found orphan containers (luga_kafdrop_1, luga_kafka_1) for this project. If you removed or renamed this service in your compose file, you can run this command with the --remove-orphans flag to clean it up.
Pulling portainer (portainer/portainer:latest)...
latest: Pulling from portainer/portainer
d1e017099d17: Pull complete
717377b83d5c: Pull complete
Digest: sha256:f8c2b0a9ca640edf508a8a0830cf1963a1e0d2fd9936a64104b3f658e120b868
Status: Downloaded newer image for portainer/portainer:latest
creating 3193e4c29d16_portainer ... done
[administrator@JavaLangOutOfMemory luga ]% docker ps
CONTAINER ID   IMAGE                        COMMAND        CREATED              STATUS              PORTS                    NAMES
7131347b2e5c   portainer/portainer:latest   "/portainer"   About a minute ago   Up About a minute   0.0.0.0:9000->9000/tcp   portainer

   通过上述命令返回,发现已经成功启动,在此进行验证:


[administrator@JavaLangOutOfMemory luga ]% curl -i 192.168.1.12:9000
HTTP/1.1 200 OK
Accept-Ranges: bytes
Cache-Control: max-age=31536000
Content-Length: 23203
Content-Type: text/html; charset=utf-8
Last-Modified: Wed, 22 Jul 2020 22:47:36 GMT
X-Content-Type-Options: nosniff
X-Xss-Protection: 1; mode=block
Date: Sat, 16 Jan 2021 03:20:35 GMT
<!DOCTYPE html
><html lang="en" ng-app="portainer">
  <head>
    <meta charset="utf-8" />
    <title>Portainer</title>
    <meta name="description" content="" />
    <meta name="author" content="Portainer.io" />
    <!-- HTML5 shim, for IE6-8 support of HTML5 elements -->
    <!--[if lt IE 9]>
      <script src="//html5shim.googlecode.com/svn/trunk/html5.js"></script>
    <![endif]-->
    <!-- Fav and touch icons -->
    <link rel="apple-touch-icon" sizes="180x180" href="dc4d092847be46242d8c013d1bc7c494.png" />
    <link rel="icon" type="image/png" sizes="32x32" href="5ba13dcb526292ae707310a54e103cd1.png" />
    <link rel="icon" type="image/png" sizes="16x16" href="f9508a64a1beb81be174e194573f7450.png" />
    <link rel="mask-icon" href="07745d55b001c85826eedd479285cdbb.svg" color="#5bbad5" />
    ... ...


       然后通过浏览器访问:http://192.168.1.12:9000

       至此,Portainer.io已部署成功,接下来对其进行各种配置操作。此窗体主要显示连接的类型,此处为本地容器管理。平台支持远程、

       首页包含Portainer管理平台所涉及的功能菜单,以及当前运行在此平台的容器、镜像、卷、网络总体以及资源概况。

       容器列表显示当前平台所有容器的运行状态以及针对容器可执行的操作命令等。包含容器的启、停,新增,监控,日志查看,容器控制台等功能。

                     

       镜像窗体主要包含镜像详细查看、删除、导入、导出等功能。

       除此之外,我们可以基于平台进行各种自定义的配置,以方便对资源集群的管理与维护。

      其实,此平台挺不错的,针对一般的公司,容器规模不够完全庞大,无论是从技术的难易程度还是从可维护、可管理性角度来说,都是一个不错的选择,毕竟,可以对其进行定制开发。

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
25天前
|
SQL 关系型数据库 数据库
国产数据实战之docker部署MyWebSQL数据库管理工具
【10月更文挑战第23天】国产数据实战之docker部署MyWebSQL数据库管理工具
85 4
国产数据实战之docker部署MyWebSQL数据库管理工具
|
14天前
|
应用服务中间件 nginx Docker
Docker Swarm、Docker Stack和Portainer的使用
Docker Swarm、Docker Stack 和 Portainer 各有其独特的功能和优势。Docker Swarm 适用于分布式服务的管理和编排,Docker Stack 便于多容器应用的定义和部署,而 Portainer 提供了直观的 UI,简化了 Docker 环境的管理。结合使用这些工具,可以大大提高容器化应用的部署和管理效率。希望本文对您理解和应用这些工具有所帮助。
28 5
|
23天前
|
存储 缓存 Kubernetes
docker的替代工具有哪些?
【10月更文挑战第28天】docker的替代工具有哪些?
91 1
|
1月前
|
运维 监控 数据可视化
Docker容器可视化管理工具 - WGCLOUD基础介绍
WGCLOUD是新一代运维监测平台,它可以监控Docker容器的各种性能数据,比如内存,cpu,Image,运行时间,运行状态,端口映射等信息
|
2月前
|
Ubuntu Linux pouch
Docker容器管理工具
文章介绍了Docker容器管理工具,以及早期使用的LXC容器管理工具,包括它们的安装、使用和相关技术特点。
79 10
Docker容器管理工具
|
3月前
|
安全 Linux 网络安全
Docker部署ssh连接工具webssh2
【8月更文挑战第2天】Docker部署ssh连接工具webssh2
294 6
Docker部署ssh连接工具webssh2
|
3月前
|
运维 监控 数据可视化
"揭秘Docker管理神器Portainer:一键解锁Docker可视化管理新境界,让你的运维工作轻松又高效!"
【8月更文挑战第11天】Docker简化了应用部署与管理,但容器规模增大时,高效管理变得挑战重重。Portainer作为轻量级Docker管理工具,以直观界面和全面功能脱颖而出。它不仅简化了容器的创建、监控与操作,还涵盖了镜像、网络、卷管理及用户权限控制。Portainer易于部署,兼容单机与Swarm集群,降低学习门槛。本文深度剖析Portainer优势,并通过实例展示其实用性,使读者对其功能与价值有深刻理解。
92 3
|
3月前
|
NoSQL 数据可视化 Linux
一文教会你如何在Linux系统中使用Docker安装Redis 、以及如何使用可视化工具连接【详细过程+图解】
这篇文章详细介绍了如何在Linux系统中使用Docker安装Redis,并提供了使用可视化工具连接Redis的步骤。内容包括安装Redis镜像、创建外部配置文件、映射文件和端口、启动和测试Redis实例、配置数据持久化存储,以及使用可视化工具连接和操作Redis数据库的过程。
|
3月前
|
数据可视化 数据安全/隐私保护 开发者
堪称最优秀的Docker可视化管理工具——Portainer深度解析与应用实践
【8月更文挑战第7天】在容器化技术日益盛行的今天,Docker以其轻量级、可移植性和灵活性的优势,成为了开发者和管理员的首选。然而,随着Docker容器的增多,如何高效地管理和监控这些容器成为了一个挑战。Portainer,作为一款开源的Docker可视化管理工具,凭借其直观的操作界面和强大的功能,赢得了广泛的赞誉。今天,我们就来深入探讨Portainer的使用技巧,看看你是否真的会用它。
158 0
|
Java 测试技术 Docker
让Docker日臻完善的8个优秀工具
一眨眼,你可能错过如今Docker领域最值得关注的动向之一。除了Docker本身的进步外,其他许多实用的项目都建立在Docker的基础上,或者得到Docker的支持。
1293 0
下一篇
无影云桌面