helix-swarm Docker 镜像下载 - 轩辕镜像
helix-swarm 镜像详细信息和使用指南
helix-swarm 镜像标签列表和版本信息
helix-swarm 镜像拉取命令和加速下载
helix-swarm 镜像使用说明和配置指南
Docker 镜像加速服务 - 轩辕镜像平台
国内开发者首选的 Docker 镜像加速平台
极速拉取 Docker 镜像服务
相关 Docker 镜像推荐
热门 Docker 镜像下载
helix-swarm 镜像详细信息
helix-swarm 镜像标签列表
helix-swarm 镜像使用说明
helix-swarm 镜像拉取命令
Docker 镜像加速服务
轩辕镜像平台优势
镜像下载指南
相关 Docker 镜像推荐
helix-swarm 镜像详细说明
helix-swarm 使用指南
helix-swarm 配置说明
helix-swarm 官方文档
P4 Code Review (原Helix Swarm) Docker容器
镜像概述和主要用途
P4 Code Review Docker容器是Perforce Software提供的***容器,用于在测试或生产环境中运行P4 Code Review(原Helix Swarm)。该容器为用户提供了便捷的部署方式,可快速搭建代码审查环境并与Helix Core Server集成。
核心功能和特性
- 与Helix Core Server(P4D)深度集成,提供代码审查功能
- 支持持久化存储配置和数据,确保容器重启后数据不丢失
- 内置Apache Web服务器,支持自定义配置
- 依赖Redis进行缓存和工作队列管理
- 支持外部配置文件修改,无需重新构建容器
- 提供灵活的部署选项,适应不同环境需求
使用场景和适用范围
- 开发团队代码审查流程
- 测试环境快速部署和验证
- 生产环境稳定运行
- 现有P4 Code Review服务器迁移到容器化环境
- 与CI/CD流程集成
镜像信息
镜像获取
P4 Code Review镜像可在Docker Hub获取,镜像名称为perforce/helix-swarm:
[***]
可用标签
以下标签的镜像可用:
- perforce/helix-swarm:latest
- perforce/helix-swarm:2025.3
- perforce/helix-swarm:2025.2
- perforce/helix-swarm:2025.1
- perforce/helix-swarm:2024.6
- perforce/helix-swarm:2024.5
- perforce/helix-swarm:2024.4
- perforce/helix-swarm:2024.3
- perforce/helix-swarm:2024.2
- perforce/helix-swarm:2024.1
- perforce/helix-swarm:2023.4
- perforce/helix-swarm:2023.3
版本化标签会在该版本有补丁发布时更新。latest标签始终指向最新版本的最新补丁。
快速开始
前提条件
- 运行中的P4D实例,且拥有超级用户访问权限
- 可运行Docker的环境
- 互联网访问
- Docker使用知识
基本使用方法
1. 创建环境变量文件
首先,创建一个.env文件,包含以下内容:
P4D_PORT=ssl:myperforce:1666 P4D_SUPER=super P4D_SUPER_PASSWD=HelixDockerBay94 SWARM_USER=swarm SWARM_PASSWD=HelixDockerBay94 SWARM_HOST=mymachine SWARM_REDIS=helix-redis SWARM_REDIS_PORT=7379 # 如果设置为'y',即使扩展已存在也会重新安装,覆盖现有配置 SWARM_FORCE_EXT=y
2. 创建Docker网络
bashdocker network create helix
3. 启动Redis容器
bashdocker run -d --name helix-redis --network helix --network-alias helix-redis \ redis redis-server --protected-mode no --port 7379
4. 启动P4 Code Review容器
bashdocker run -d --name helix-swarm --network helix --network-alias helix-swarm \ --env-file .env -p 80:80 perforce/helix-swarm
详细配置指南
环境变量配置
以下环境变量可用于配置P4 Code Review Docker镜像。注意,如果已存在config.php文件,大多数这些选项将被忽略。
| 配置项 | 默认值 | 描述 |
|---|---|---|
| P4D_SUPER | super | 超级用户名 |
| P4D_SUPER_PASSWD | 无默认值 | 超级用户密码 |
| P4D_PORT | ssl:perforce:1666 | P4D服务器端口 |
| SWARM_USER | swarm | P4 Code Review用户名 |
| SWARM_PASSWD | 无默认值 | P4 Code Review用户密码 |
| SWARM_MAILHOST | localhost | 邮件服务器地址 |
| SWARM_HOST | helix-swarm | P4 Code Review服务器主机名 |
| SWARM_FORCE_EXT | n | 设置为'y'以覆盖扩展 |
| SWARM_REDIS | helix-redis | Redis服务器主机名 |
| SWARM_REDIS_PORT | 7379 | Redis服务器端口 |
| SWARM_REDIS_PASSWD | Redis服务器密码 | |
| SWARM_REDIS_NAMESPACE | Redis命名空间 |
持久化容器数据(生产环境)
完整的生产环境要求P4 Code Review和Redis数据能够在容器生命周期之外持久化。这可以通过启动Docker容器时使用绑定挂载来实现。
bash# 创建存储目录 mkdir -p storage/redis-data mkdir -p storage/swarm-data # 启动Redis容器(带数据持久化) docker run -d --name helix-redis --network helix --network-alias helix-redis \ -v $PWD/storage/redis-data:/data redis \ redis-server --protected-mode no --port 7379 --appendonly yes # 启动P4 Code Review容器(带数据持久化) docker run -d --name helix-swarm --network helix --network-alias helix-swarm \ -p 80:80 -v $PWD/storage/swarm-data:/opt/perforce/swarm/data \ --env-file .env perforce/helix-swarm
此配置将P4 Code Review配置和Redis缓存数据保留在容器外部。P4 Code Review日志文件、工作队列、令牌和工作区也将被保留。
重启Docker容器
当容器启动时,如果/opt/perforce/swarm/data/config.php文件已存在,则会跳过大部分配置步骤。这允许容器重启而不必每次都重新配置系统。
这使得.env文件不再需要。删除Docker容器后,可以使用以下命令重新创建并重启:
bashdocker run -d --name helix-swarm --network helix --network-alias helix-swarm \ -p 80:80 -v $PWD/storage/swarm-data:/opt/perforce/swarm/data \ perforce/helix-swarm
Docker目录
启动时,如果/opt/perforce/swarm/data/docker目录不存在,将创建该目录。Apache站点配置和几个不在数据目录中的P4 Code Review配置文件将复制到这里,然后从它们通常的位置链接到这里。这允许用户在容器外部修改这些文件,任何更改将在重启之间保留。
/etc/apache2/sites-available -> docker/sites-available [目录]/opt/perforce/etc/swarm-cron-hosts.conf -> docker/swarm-cron-hosts.conf/opt/perforce/swarm/public/custom -> docker/custom [目录]
迁移到Docker环境
如果要将现有P4 Code Review服务器替换为Docker,可以重用现有的config.php配置文件。还可以配置P4 Code Review使用不同的Redis实例。
- 创建
./storage目录 - 将旧的
data目录内容复制到./storage/swarm-data - 确保
config.php中的网络连接配置正确 - 确保有适合的Apache站点配置文件
bashdocker network create helix mkdir -p storage/redis-data docker run -d --name helix-redis --network helix --network-alias helix-redis \ -v $PWD/storage/redis-data:/data redis \ redis-server --protected-mode no --port 7379 --appendonly yes mkdir -p storage/swarm-data # 将旧数据复制到storage/swarm-data目录 # cp -R /path/to/old/data/* storage/swarm-data/ docker run -d --name helix-swarm --network helix --network-alias helix-swarm \ -p 80:80 -v $PWD/storage/swarm-data:/opt/perforce/swarm/data \ perforce/helix-swarm
注意事项
从同一台机器上的P4 Code Review安装迁移到Docker安装时,需要注意以下可能的问题:
- P4 Code Review用户的登录票据可能需要更改,除非使用主机未锁定的票据
- 主机上运行的任何cron作业可能会干扰Docker实例
- Redis配置需要更改,因为它不再与Apache实例在本地
Apache配置
默认情况下,Apache启用了三个模块:rewrite、ssl和remoteip。ssl模块仅在需要从容器内运行HTTPS时才需要。如果使用SSL,还需要放置SSL密钥和证书文件的位置。有以下选项:
- 将它们放在data/docker目录中,并从Apache站点配置文件中引用它们
- 将它们放在其他位置并外部挂载该位置(更安全的选项)
- 在容器外部管理SSL,使用另一个Web服务器作为容器的代理
Apache代理
如果Docker容器由另一个Web服务器作为前端,则可能会遇到Helix票据问题,除非它们是主机未锁定的。通常Apache会将客户端的IP地址转发给P4 Code Review。
如果P4 Code Review位于Web代理(如运行SSL的第二个Apache服务器)后面,则客户端的IP地址会丢失。在这种情况下,必须使用主机未锁定的票据(通过p4 login -ap获取)。
或者,可以使用remoteip模块允许容器Apache信任代理,从而启用客户端IP的转发。在perforce-swarm-site.conf中添加以下行:
RemoteIPHeader X-Forwarded-For RemoteIPInternalProxy 172.19.0.1/24
RemoteIPInternalProxy应该是容器看到的主机IP地址。
Docker Compose配置示例
可以使用docker-compose.yml简化部署:
yamlversion: '3' networks: helix: driver: bridge services: redis: image: redis container_name: helix-redis networks: - helix command: redis-server --protected-mode no --port 7379 volumes: - ./storage/redis-data:/data restart: unless-stopped swarm: image: perforce/helix-swarm container_name: helix-swarm networks: - helix ports: - "80:80" volumes: - ./storage/swarm-data:/opt/perforce/swarm/data environment: - P4D_PORT=ssl:myperforce:1666 - P4D_SUPER=super - P4D_SUPER_PASSWD=HelixDockerBay94 - SWARM_USER=swarm - SWARM_PASSWD=HelixDockerBay94 - SWARM_HOST=mymachine - SWARM_REDIS=helix-redis - SWARM_REDIS_PORT=7379 - SWARM_FORCE_EXT=y depends_on: - redis restart: unless-stopped
使用以下命令启动:
bashdocker-compose up -d
升级指南
有关升级P4 Code Review Docker容器的详细说明,请参阅文档: []
Makefile使用
有一个Makefile用于抽象可以运行的一些命令。如果在具有适当构建工具的Linux系统上,这可能会很有用。
Makefile目标
- make build: 本地构建docker文件
- make build-clean: 本地构建docker文件,不使用docker缓存
- make push: 将构建的镜像推送到Docker Hub
- make clean: 删除所有正在运行的docker容器
- make run: 在自己的网络中运行Redis和P4 Code Review容器
- make bash: 打开运行中的P4 Code Review容器的shell
- make log: 显示docker日志文件内容
- make tail: 跟踪docker日志文件内容
Makefile设置了一些默认参数,可以通过build.mk文件覆盖:
REPO := perforce IMAGE := helix-swarm-development TAG := DEV-BUILD ARGS := NAME := helix-swarm
@copyright 2025 Perforce Software. 保留所有权利。# P4 Code Review (原Helix Swarm) Docker容器
镜像概述和主要用途
P4 Code Review Docker容器是Perforce Software提供的***容器,用于在测试或生产环境中运行P4 Code Review(原Helix Swarm)。该容器为用户提供了便捷的部署方式,可快速搭建代码审查环境并与Helix Core Server集成。
核心功能和特性
- 与Helix Core Server(P4D)深度集成,提供代码审查功能
- 需要Redis服务器作为缓存
- 支持数据持久化,确保配置和数据在容器重启后不丢失
- 配置文件可在容器外部修改,无需重新构建容器
- 支持从现有P4 Code Review服务器迁移到Docker环境
使用场景和适用范围
- 开发团队代码审查流程
- 测试环境快速部署与验证
- 生产环境稳定运行
- 现有P4 Code Review服务器容器化迁移
镜像信息
镜像获取
P4 Code Review镜像可在Docker Hub获取:
[***]
可用标签
以下标签的镜像可用:
- perforce/helix-swarm:latest
- perforce/helix-swarm:2025.3
- perforce/helix-swarm:2025.2
- perforce/helix-swarm:2025.1
- perforce/helix-swarm:2024.6
- perforce/helix-swarm:2024.5
- perforce/helix-swarm:2024.4
- perforce/helix-swarm:2024.3
- perforce/helix-swarm:2024.2
- perforce/helix-swarm:2024.1
- perforce/helix-swarm:2023.4
- perforce/helix-swarm:2023.3
版本化标签会在该版本有补丁发布时更新。latest标签始终指向最新版本的最新补丁。
快速开始
前提条件
- 运行中的P4D实例,且拥有超级用户访问权限
- 可运行Docker的环境
- 互联网访问
- Docker基本使用知识
基本使用方法
1. 创建环境变量文件
首先,创建.env文件,包含以下内容:
P4D_PORT=ssl:myperforce:1666 P4D_SUPER=super P4D_SUPER_PASSWD=HelixDockerBay94 SWARM_USER=swarm SWARM_PASSWD=HelixDockerBay94 SWARM_HOST=mymachine SWARM_REDIS=helix-redis SWARM_REDIS_PORT=7379 # 如果设置为'y',即使扩展已存在也会重新安装,覆盖现有配置 SWARM_FORCE_EXT=y
P4D_PORT必须设置为P4D实例的端口,且必须能从docker镜像访问。P4D_SUPER和P4D_SUPER_PASSWD变量必须设置为P4D上的超级用户信息。
SWARM_USER如果不存在将被创建,SWARM_PASSWD必须正确设置,需要是管理员或超级用户。
SWARM_HOST必须是docker容器使用的主机名,且必须能从P4D服务器访问。重要:SWARM_HOST用于配置扩展,因此P4D必须能够使用此处给出的主机名回调。
SWARM_REDIS和SWARM_REDIS_PORT用于配置Swarm连接Redis服务器作为缓存。
2. 创建Docker网络
bashdocker network create helix
3. 启动Redis容器
bashdocker run -d --name helix-redis --network helix --network-alias helix-redis \ redis redis-server --protected-mode no --port 7379
4. 启动P4 Code Review容器
bashdocker run -d --name helix-swarm --network helix --network-alias helix-swarm \ --env-file .env -p 80:80 perforce/helix-swarm
详细配置指南
持久化容器数据(生产环境)
完整的生产环境要求P4 Code Review和Redis数据能够在容器生命周期之外持久化。这可以通过启动Docker容器时使用绑定挂载来实现。
bash# 创建存储目录 mkdir -p storage/redis-data mkdir -p storage/swarm-data # 启动Redis容器(带数据持久化) docker run -d --name helix-redis --network helix --network-alias helix-redis \ -v $PWD/storage/redis-data:/data redis \ redis-server --protected-mode no --port 7379 --appendonly yes # 启动P4 Code Review容器(带数据持久化) docker run -d --name helix-swarm --network helix --network-alias helix-swarm \ -p 80:80 -v $PWD/storage/swarm-data:/opt/perforce/swarm/data \ --env-file .env perforce/helix-swarm
此配置将P4 Code Review配置和Redis缓存数据保留在容器外部。P4 Code Review日志文件、工作队列、令牌和工作区也将被保留。
重启Docker容器
当容器启动时,如果/opt/perforce/swarm/data/config.php文件已存在,则
用户好评
来自真实用户的反馈,见证轩辕镜像的优质服务
常见问题
免费版仅支持 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 登录认证访问私有仓库
Linux
在 Linux 系统配置镜像加速服务
Windows/Mac
在 Docker Desktop 配置镜像加速
Docker Compose
Docker Compose 项目配置加速
K8s Containerd
Kubernetes 集群配置 Containerd
宝塔面板
在宝塔面板一键配置镜像加速
群晖
Synology 群晖 NAS 配置加速
飞牛
飞牛 fnOS 系统配置镜像加速
极空间
极空间 NAS 系统配置加速服务
爱快路由
爱快 iKuai 路由系统配置加速
绿联
绿联 NAS 系统配置镜像加速
威联通
QNAP 威联通 NAS 配置加速
Podman
Podman 容器引擎配置加速
Singularity/Apptainer
HPC 科学计算容器配置加速
其他仓库配置
ghcr、Quay、nvcr 等镜像仓库
专属域名拉取
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429