Portainer 是最受欢迎的 Docker 图形化管理工具,通过浏览器即可可视化管理容器、镜像、数据卷、网络和 Stack(Compose),极大地降低了 Docker 的操作门槛。无论是新手入门还是日常运维,Portainer 都能显著提升效率。
本文要点
- Docker 部署 Portainer CE(社区免费版)
- 首次登录与安全配置
- 管理容器、镜像、数据卷的常用操作
- 用 Stacks 部署 Compose 应用
- Nginx 反代 + SSL 保护管理界面
部署 Portainer CE
Portainer 本身也是一个 Docker 容器,通过挂载 Docker Socket 与宿主机 Docker 通信:
# 创建数据卷
docker volume create portainer_data
# 启动 Portainer
docker run -d \
--name portainer \
-p 8000:8000 \
-p 9443:9443 \
-v /var/run/docker.sock:/var/run/docker.sock \
-v portainer_data:/data \
--restart unless-stopped \
portainer/portainer-ce:latest或使用 docker-compose.yml:
# /opt/portainer/docker-compose.yml
services:
portainer:
image: portainer/portainer-ce:latest
container_name: portainer
ports:
- "8000:8000"
- "9443:9443"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- portainer_data:/data
restart: unless-stopped
volumes:
portainer_data:Docker Socket 权限极高
首次登录与安全配置
Portainer 部署后访问 https://服务器IP:9443(自签名证书,浏览器提示安全警告属正常,点击继续):
- 设置管理员用户名与密码(密码至少 12 位,包含字母数字与符号)
- 选择"Local"连接本地 Docker 环境
- 进入主界面,即可看到当前所有容器
5 分钟超时
docker restart portainer。主要功能模块
| 模块 | 功能说明 | 常见操作 |
|---|---|---|
| Containers | 管理所有容器 | 启停、查看日志、进入终端、查看统计 |
| Images | 管理镜像 | 拉取、删除、查看层级 |
| Volumes | 管理数据卷 | 创建、删除、浏览内容 |
| Networks | 管理网络 | 创建自定义网络、查看容器网络 |
| Stacks | 管理 Compose 应用 | 粘贴或上传 compose.yml 一键部署 |
用 Stacks 部署 Compose 应用
在 Portainer 中点击 Stacks → Add Stack,将 docker-compose.yml 内容粘贴到编辑框,填写 Stack 名称后点击"Deploy the stack",即可在界面上完成 Compose 应用的部署,后续可直接在界面修改配置并更新。
Nginx 反向代理 + SSL(可选)
如果希望用域名访问 Portainer 并避免浏览器证书警告,可配置 Nginx 反代:
certbot --nginx -d portainer.yourdomain.comserver {
listen 443 ssl;
server_name portainer.yourdomain.com;
ssl_certificate /etc/letsencrypt/live/portainer.yourdomain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/portainer.yourdomain.com/privkey.pem;
location / {
proxy_pass https://127.0.0.1:9443;
proxy_ssl_verify off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}限制访问 IP
allow 你的IP; deny all; 限制只有你自己的 IP 能访问管理界面,安全性大幅提升。更新 Portainer
docker stop portainer
docker rm portainer
docker pull portainer/portainer-ce:latest
# 重新执行启动命令(数据卷 portainer_data 中的配置保留)小结
- Portainer CE 免费、功能完整,适合个人与小团队
- Docker Socket 权限极高,务必配置强密码和 HTTPS
- Stacks 功能让 Compose 部署可在界面上完成,无需 SSH
- 限制访问 IP 是比密码更有效的安全措施
常见问题
Portainer 免费版够用吗?
对于个人和小团队完全够用。CE 版支持完整的容器管理、Stacks、日志、终端等核心功能;Business 版增加了 RBAC 权限、审计日志等企业特性。
Portainer 支持管理远程 Docker 吗?
支持。可以添加多个 Environment,通过 Agent 或 Docker API 管理远程服务器上的 Docker 环境,适合多台 VPS 统一管理。
忘记 Portainer 管理员密码怎么办?
需要重置数据卷:停止并删除容器,删除 portainer_data 卷(会清除所有 Portainer 配置),重新启动后重新初始化。重要配置请事先在界面导出或记录。