
本Docker镜像是原始Portainer的重新打包版本,符合HomeCenter Docker镜像标准(包含S6 overlay、权限降低等特性)。Portainer是一款轻量级的Docker管理工具,提供直观的Web UI界面,用于管理Docker容器、镜像、网络和卷等资源。
适用于需要通过Web界面管理Docker环境的用户,尤其适合:
yamlversion: "3.7" services: portainer: image: homecentr/portainer restart: unless-stopped environment: PORTAINER_ARGS: "--no-auth" # Portainer启动参数 WAIT_FOR_NS_RECORD: "tasks.agent" # 启动前需解析的DNS记录 WAIT_FOR_NS_RECORD_TIMEOUT: 30 # DNS记录解析超时时间 healthcheck: start_period: 40s # 健康检查启动延迟 ports: - "9000:9000/tcp" # Web UI端口 volumes: - /var/run/docker.sock:/var/run/docker.sock # 挂载Docker socket
| 名称 | 默认值 | 描述 |
|---|---|---|
| PUID | 7077 | Portainer运行用户的UID,该UID必须有足够权限读取Docker socket |
| PGID | 7077 | Portainer运行用户的GID,设置PGID时必须同时设置PUID |
| PORTAINER_ARGS | Portainer可执行文件的命令行参数,默认日志重定向到容器输出 | |
| WAIT_FOR_NS_RECORD | 启动Portainer前需成功解析的DNS记录,在Docker Swarm中使用tasks. | |
| WAIT_FOR_NS_RECORD_TIMEOUT | 20 | 等待DNS记录解析的超时时间(秒) |
使用DNS记录等待功能时,必须按示例设置健康检查的启动延迟(约10秒 + DNS记录超时时间),可通过compose文件中的
service.healthcheck.start_period属性或命令行参数设置。否则健康检查可能在Portainer进程启动前开始,导致检查失败和容器无限重启。
| 端口 | 协议 | 描述 |
|---|---|---|
| 9000 | TCP | Web UI访问端口 |
| 8000 | TCP | 仅用于edge agent功能,未在Docker镜像中显式暴露 |
| 容器路径 | 描述 |
|---|---|
| /data | Portainer数据存储目录 |
在Docker Swarm外部使用时,确保挂载Docker socket(
/var/run/docker.sock)。
容器定期进行漏洞扫描和更新,更多信息可查看https://github.com/homecentr/docker-portainer/security%E3%80%82
容器支持权限降低:虽然容器以root权限启动,但仅在初始配置阶段使用该权限,Portainer进程最终以PUID和PGID环境变量指定的用户身份运行。
⚠️ 请勿通过Docker Compose的user属性或--user命令行参数直接修改容器用户,这会破坏权限降低逻辑。
💡 要授予用户读取Docker socket的权限,可将PGID设置为主机上docker组的ID。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务