本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
compose-unpacker 是 Portainer 提供的专用工具镜像,用于从 Git 仓库获取 Docker Compose 堆栈配置,并自动部署到远程环境。该工具旨在简化基于 Git 版本控制的 Compose 堆栈部署流程,实现配置即代码(Configuration as Code)理念,支持远程环境(如 Docker Engine、Kubernetes 集群等)的自动化部署与更新。
docker-compose.yml)。docker run 命令docker run -d \ --name compose-unpacker \ -e PORTAINER_URL="[***]" \ -e PORTAINER_TOKEN="pt_xxxxxx" \ -e GIT_REPO_URL="[***]" \ -e GIT_BRANCH="main" \ -e REMOTE_ENV_ID="1" \ -e COMPOSE_FILE_PATH="stacks/prod/docker-compose.yml" \ -v /path/to/ssh-key:/root/.ssh/id_rsa:ro \ # 若使用 SSH 认证 portainer/compose-unpacker:latest
version: '3.8' services: compose-unpacker: image: portainer/compose-unpacker:latest container_name: compose-unpacker environment: # Portainer 连接配置 PORTAINER_URL: "[***]" # Portainer 实例 URL(必填) PORTAINER_TOKEN: "pt_xxxxxx" # Portainer 访问令牌(必填,需具备环境管理权限) # Git 仓库配置 GIT_REPO_URL: "***:example/compose-stacks.git" # Git 仓库 URL(必填,支持 HTTP/SSH) GIT_BRANCH: "main" # 分支/标签/提交哈希(可选,默认 main) GIT_SSH_KEY_PATH: "/root/.ssh/id_rsa" # SSH 密钥路径(可选,用于 SSH 认证) GIT_USERNAME: "git-user" # HTTP 用户名(可选,用于 HTTP 认证) GIT_PASSWORD: "git-pass" # HTTP 密码/令牌(可选,用于 HTTP 认证) # 部署目标配置 REMOTE_ENV_ID: "1" # Portainer 远程环境 ID(必填,在 Portainer 环境列表中查看) COMPOSE_FILE_PATH: "docker-compose.yml" # 仓库内 Compose 文件路径(可选,默认根目录 docker-compose.yml) # 部署策略配置 DEPLOY_STRATEGY: "replace" # 部署策略(可选:replace/merge,默认 replace) KEEP_VOLUMES: "true" # 是否保留数据卷(可选:true/false,默认 true) SKIP_TLS_VERIFY: "false" # 是否跳过 Portainer TLS 验证(可选:true/false,默认 false) volumes: - /local/path/to/ssh-key:/root/.ssh/id_rsa:ro # 挂载 SSH 密钥(若使用 SSH 认证) restart: unless-stopped
| 变量名 | 描述 | 示例值 |
|---|---|---|
PORTAINER_URL | Portainer 实例访问 URL | [***] |
PORTAINER_TOKEN | Portainer 访问令牌(需环境管理权限) | pt_1234567890abcdef |
GIT_REPO_URL | Git 仓库完整 URL(HTTP/SSH 协议) | [***] |
REMOTE_ENV_ID | Portainer 远程环境 ID(数字) | 1(在 Portainer 环境列表中查看 ID 列) |
| 变量名 | 描述 | 默认值 | 可选值 |
|---|---|---|---|
GIT_BRANCH | Git 分支、标签或提交哈希 | main | 如 dev、v1.0.0、a1b2c3d |
GIT_SSH_KEY_PATH | 容器内 SSH 密钥文件路径 | - | 如 /root/.ssh/id_rsa |
GIT_USERNAME | HTTP 认证用户名 | - | Git 服务用户名 |
GIT_PASSWORD | HTTP 认证密码/令牌 | - | Git 服务密码或 Personal Token |
COMPOSE_FILE_PATH | 仓库内 Compose 文件相对路径 | docker-compose.yml | 如 stacks/prod/compose.yml |
DEPLOY_STRATEGY | 部署策略:替换或合并现有堆栈 | replace | replace(全量替换)、merge(增量更新) |
KEEP_VOLUMES | 部署时是否保留现有数据卷 | true | true、false |
SKIP_TLS_VERIFY | 是否跳过 Portainer 服务端 TLS 验证 | false | true、false |
LOG_LEVEL | 日志级别 | info | debug、info、warn、error |
GIT_REPO_URL 及认证信息克隆仓库,切换至 GIT_BRANCH 指定版本。COMPOSE_FILE_PATH 路径的文件,处理环境变量替换(若文件中包含 ${VAR} 格式变量)。PORTAINER_URL 和 PORTAINER_TOKEN 认证 Portainer 实例。REMOTE_ENV_ID 定位目标环境,按 DEPLOY_STRATEGY 执行堆栈部署/更新。PORTAINER_TOKEN 需关联具备“环境管理”和“堆栈管理”权限的用户。GIT_SSH_KEY_PATH)优先于 HTTP 认证(GIT_USERNAME/GIT_PASSWORD)。免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429