跳过正文
Portainer【入门篇】
  1. 运维日记/

Portainer【入门篇】

·753 字·2 分钟·
目录
portainer - 这篇文章属于一个选集。
§ 1: 本文

Portainer.io​ 是一个轻量级的 ​Docker 和 Kubernetes 可视化管理系统,通过直观的 Web 界面简化容器化应用的部署、管理和监控。以下是它的核心作用、功能和应用场景:

快速开始
#

核心作用​

  1. ​可视化容器管理​
  • 无需记忆复杂的命令行,通过 Web 界面即可管理 Docker/Kubernetes 容器、镜像、网络、卷等资源。
  • 支持多节点(本地或远程服务器)的统一管理。
  1. ​简化运维操作​
  • 一键部署应用、更新容器、查看日志、执行终端命令。
  • 提供图形化操作界面
  1. ​安全与权限控制​
  • 支持多用户角色分配(管理员、普通用户等),细化权限管理。
  • 集成 TLS 加密,保障远程管理安全。
  1. ​监控与告警​
  • 实时监控容器资源占用(CPU、内存、网络)。
  • 支持日志查看和事件追踪,快速定位问题。

基础环境
#

  • Docker
  • Docker Compose
  • Traefik【可选】

部署步骤
#

  1. 创建compose.yml文件
mkdir /usr/local/src/portainer
touch /usr/local/src/portainer/compose.yml
  1. compose.yml文件内容
services:
  portainer:
    image: portainer/portainer-ce:2.33.1
    container_name: portainer
    restart: unless-stopped
    environment:
      # 时区
      - TZ=Asia/Shanghai
    ports:
      - "8000:8000"
      - "9000:9000"
      - "9443:9443"
    volumes:
      - /usr/local/src/portainer/data:/data
      - /var/run/docker.sock:/var/run/docker.sock
    networks:
      # dhcp 自动分配
      - service
    # 资源限制优化:
    deploy:
      resources:
        limits:
          memory: 128m
          cpus: "0.50"
    labels:
      # Traefik 服务发现和路由配置
      # 启用 Traefik 对此服务进行发现
      - "traefik.enable=true"
      # 指定 Traefik 应该监听哪个网络来发现此服务
      - "traefik.docker.network=service"
      # Router (路由器) 配置
      # 定义路由规则:匹配域名 portainer.artoio.com
      - "traefik.http.routers.portainer.rule=Host(`portainer.artoio.com`)"
      # 指定此路由只监听 'websecure' 入口点(通常是 443 端口)
      - "traefik.http.routers.portainer.entrypoints=websecure"
      # 为此路由启用 TLS (HTTPS)
      - "traefik.http.routers.portainer.tls=true"
      # 使用名为 'letsencrypt' 的证书解析器(需要在 Traefik 配置中定义)
      - "traefik.http.routers.portainer.tls.certresolver=letsencrypt"
      # Service (服务) 配置
      # 指定此路由要转发到哪个 Traefik 服务(与下面的服务名一致)
      - "traefik.http.routers.portainer.service=portainer"
      # portainer 容器内部监听的端口
      - "traefik.http.services.portainer.loadbalancer.server.port=9000"
      # WAF
      - "traefik.http.routers.portainer.middlewares=chaitin@file"
networks:
  service:
    external: true
  1. 启动容器
docker compose up -d

数据持久【强制】
#

数据持久将Portainer数据持久化到/usr/local/src/portainer/data目录下,如使用Stacks创建的容器服务。

  • /usr/local/src/portainer/data:/data

网关代理【可选】
#

Traefik网关代理Portainer容器,用于实现域名访问,并且Traefik配置了证书自动申请、定时更新!

  • 9000: Portainer Web 端口
  • 9443: Portainer HTTPS 端口

portainer - 这篇文章属于一个选集。
§ 1: 本文

相关文章


微信赞赏
微信赞赏
关注公众号
关注公众号
支付宝赞赏
支付宝赞赏