使用 Docker 部署 Portainer

本文分享如何使用 Docker 部署 Portainer

如果您是第一次阅读该系列文章,建议优先阅读 Docker 部署项目说明及索引

Docker Compose

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
name: portainer

services:
  portainer:
    image: portainer/portainer-ce:2.45.0
    container_name: portainer
    hostname: portainer
    restart: unless-stopped
    ports:
      - "9000:9000"
    volumes:
      - ./data:/data
      - /var/run/docker.sock:/var/run/docker.sock
    environment:
      - TZ=Asia/Shanghai
networks:
  default:
    external: true
    name: rod

使用 Portainer

打开链接: http://localhost:9000 按指引安装配置 Portainer 即可。 Setup token,可通过 docker logs -f portainer 查看日志获取。

注意 Portainer 注册用户尽量不要拖延, 会超时。超时以后需要重启再注册。

NPM 反向代理配置

此处以 https://portainer.example.com 为例

如果未部署 NPM,可参考文章:使用 Docker 部署 Nginx Proxy Manager

Details

  • Domain Names: portainer.example.com
  • Scheme: http
  • Forward Hostname/IP: 127.0.0.1 (如果 NPM 未使用 HOST,则使用容器的 hostname: portainer)
  • Forward Port: 9000
  • Cache Assets: ✅

SSL

  • 选择你已经配置好的 SSL Certificate,如 *.example.com, example.com
  • Force SSL: ✅
  • HTTP/2 Support: ✅

部署 Agent

如果已有 Portainer,希望链接其他 Docker,可以在目的 Docker 上部署 Portainer Agent。

Docker Compose

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
name: portainer

services:
  portainer-agent:
    image: portainer/agent:2.45.0
    container_name: portainer-agent
    hostname: portainer-agent
    restart: unless-stopped
    ports:
      - "9001:9001"
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - /var/lib/docker/volumes:/var/lib/docker/volumes    
    environment:
      - TZ=Asia/Shanghai
      - AGENT_CLUSTER_ADDR=tasks.agent
networks:
  default:
    external: true
    name: rod

注意:

  • Agent 版本与 Portainer 一致
  • 群晖 NAS 的 docker volumes 路径是 /volume1/@docker/volumes 而非 /var/lib/docker/volumes,请根据实际情况进行修改。

参考网址

如果本文对您有所帮助,欢迎打赏支持作者!

Licensed under CC BY-NC-SA 4.0
最后更新于 2026-09-01 10:25
使用 Hugo 构建
主题 StackJimmy 设计