Jorgen's blog Jorgen's blog
首页
  • 平台架构
  • 混合式开发记录
  • 推送服务
  • 数据分析
  • 实时调度
  • 架构思想

    • 分布式
  • 编程框架工具

    • 编程语言
    • 框架
    • 开发工具
  • 数据存储与处理

    • 数据库
    • 大数据
  • 消息、缓存与搜索

    • 消息队列
    • 搜索与日志分析
  • 前端与跨端开发

    • 前端技术
    • Android
  • 系统与运维

    • 操作系统
    • 容器化与 DevOps
  • 物联网与安全

    • 通信协议
    • 安全
    • 云平台
收藏
  • 关于我
  • 终身学习
  • 关于时间的感悟
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

jorgen

Love it, make mistakes, learn, keep grinding.
首页
  • 平台架构
  • 混合式开发记录
  • 推送服务
  • 数据分析
  • 实时调度
  • 架构思想

    • 分布式
  • 编程框架工具

    • 编程语言
    • 框架
    • 开发工具
  • 数据存储与处理

    • 数据库
    • 大数据
  • 消息、缓存与搜索

    • 消息队列
    • 搜索与日志分析
  • 前端与跨端开发

    • 前端技术
    • Android
  • 系统与运维

    • 操作系统
    • 容器化与 DevOps
  • 物联网与安全

    • 通信协议
    • 安全
    • 云平台
收藏
  • 关于我
  • 终身学习
  • 关于时间的感悟
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • Docker

    • 简介
    • Docker搭建
    • docker-compose安装
    • Portainer
      • 介绍
      • 功能
      • 备注
      • 安装
        • 首先都需要下载好镜像
        • 直接运行容器方式
        • 集群创建服务方式
        • 通过stack部署方式
      • 功能介绍
  • k8s

  • devops
  • Docker
Jorgen
2020-11-18
目录

Portainer

# 介绍

  1. 易于使用的软件,可为软件开发人员和IT操作人员提供直观的界面。

  2. 你提供Docker环境的详细概述,并允许你管理容器,镜像,网络和数据卷。

  3. 易于部署,仅需一个Docker命令即可在任何地方运行Portainer。

# 功能

  1. 支持多集群管理、清晰的仪表盘显示、内置很多应用模板。

  2. Docker功能(堆栈、服务、容器、镜像、网络、数据卷、配置)增删改查、使用状态监控等。

  3. 集群安全加密、多节点管理、用户角色控制、仓库列表、系统设置。

# 备注

  1. 用户权限控制、仓库镜像管理、外部认证这三个扩展功能是收费的,但总体功能较为强大,且持续维护中。

  2. 类似工具还有DockerUI(单机、功能简陋),Shipyard(功能较全、但Bug较多且早已停更),不推荐使用。

  3. 一般项目都是结合Jenkins实现快速部署,所以很多创建功能虽然比较全面,但还是用的比较少,主要用处还是监控。


# 安装

Portainer由两个元素组成,即Portainer服务器和Portainer代理。

这两个元素都在Docker引擎或Swarm集群中作为轻量级Docker容器运行。由于Docker的性质,存在许多可能的部署方案,以下有三种方式选其一即可。

# 首先都需要下载好镜像

docker search portainer      # 搜索
docker pull portainer/portainer    # 下载
1
2

admin

# 直接运行容器方式

单机模式,最为简单,运行模式需要选择local。

docker run -d \        # 后台运行容器
  -p 9000:9000 \      # 默认9000端口,映射到宿主机,通过本地地址访问
  --name prtainer-test \   # 指定容器名
  --restart=always \      # 设置自动启动
    -v /opt/portainer:/data \    # 保存portainer数据到宿主机
    -v /var/run/docker.sock:/var/run/docker.sock \  # 单机方式必须指定
  portainer/portainer
1
2
3
4
5
6
7

# 集群创建服务方式

集群模式,可添加多节点,功能得到扩展,较为全面。

  docker service create \
  --name Portainer \      # 指定服务器
  --publish 9000:9000 \    # 端口映射
  --constraint 'node.role == manager' \   # 限制仅在管理节点运行
  --mount type=bind,src=//opt/portainer,dst=/data \  # 挂载portainer数据到宿主机
  --mount type=bind,src=//var/run/docker.sock,dst=/var/run/docker.sock \  # 指定docker.sock
  portainer/portainer \
  -H unix:///var/run/docker.sock
1
2
3
4
5
6
7
8

# 通过stack部署方式

新建docker-compose.yml文件,运行部署命令即可,服务信息较为清晰。

# file: docker-compose.yml

version: '3'    # docker stack deploy 必须声明为3.0以上版本
services:
  portainer:    # 服务名
    image: portainer/portainer  # 基础镜像

    ports:     # 端口映射
      - 9000:9000

    volumes:    # 数据卷挂载
      - //opt/portainer:/data
      - //var/run/docker.sock:/var/run/docker.sock

    deploy:    # 部署设置
      mode: replicated
      replicas: 1  # 单副本
      placement:
        constraints:  # 约束
          - node.role == manager

# docker stack deploy -c docker-compose.yml PTN
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

最后浏览localhost:9000,设置admin密码即可: admin

# 功能介绍

  1. 查看Portainer中定义的所有端点的列表,按标签/关键字/ ip /名称搜索,选择管理。 intro

  2. 仪表盘 可以清晰看到docker服务中运行的服务数、容器数、镜像数等等信息 intro

  3. 应用模板 通过模板轻松部署通用应用程序,也可以将自己的自定义模板添加到Portainer模板。 intro

  4. 堆栈管理 可以查看所有正在运行的堆栈,也可以进行简单的添加删除操作。 intro

  5. 服务管理 可以添加服务,对已有服务进行更新、删除,以及可以清晰的查看到服务历史运行情况。 intro

  6. 容器管理

    • 这个是我们最常用的功能,可以快速的部署应用,也可以对已有容器进行删除、停止、重启等,以及查看监控容器运行情况,非常非常的便捷。 intro

    • 容器实时日志功能非常不错,再也不用去服务上执行命查看了,而且还有筛选功能,非常的便捷。 intro

    • 可以实时监控内存使用、cpu使用、网络使用情况,可以自行调节频率。 intro

  7. 镜像管理   可以进行镜像拉取、构建新的镜像、镜像的导入导出、tag增删改、本地镜像列表信息,同样点击镜像可以查看到镜像的详细信息。 intro

  8. 网络管理  可以清晰查看docker目前使用的网络,以及系统默认的三个网络。 intro

  9. 数据卷管理 可以增加、删除、查看数据卷信息。 intro

  10. 配置管理 可以增加、删除、查看docker配置文件。 intro

  11. 安全管理  可以添加安全认证,目前本人还未使用。 intro

  12. Swarm集群   可以显示集群信息,也可以go to cluster visuallzer查看集群所有容器运行情况。 intro

  13. 增加节点    > 需要是集群模式,可以添加节点,以实现集群管理。以下有四种连接方式,其中外部认证方式为扩展收费功能。   一般通过Docker API,但是需要修改/usr/lib/systemd/system/docker.service

ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock
1

注意

如果开启防火墙,记得把2375加入白名单(firewall-cmd --zone=public --add-port=2375/tcp --permanent),否则会出现无法连接问题

intro intro

  1. 用户管理   用户角色权限管理是扩展收费功能,不扩展仅能对用户进行分组控制和是否赋予超管权限。

但是由于通常项目中都是结合Jenkins快速部署,所以默认创建者都是administrator,

但是用户如果不分配超管权限,将无法查看docker项目信息。

综合以上,不扩展功能时新增用户仅是为了知道谁在使用,无其他作用。 intro

  1. 仓库管理 仓库镜像管理是收费扩展功能,不扩展此项无太大用处。 intro

  2. 系统设置   一般不需要进行什么修改 intro

#Git
上次更新: 2025/03/09, 15:45:50
docker-compose安装
介绍

← docker-compose安装 介绍→

最近更新
01
STM32入门
03-09
02
ADB调试
03-09
03
微信小程序学习记录
02-09
更多文章>
Theme by Vdoing | Copyright © 2019-2025 Jorgen | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式