3.8 KiB
Raw Blame History

title, date, excerpt, tags, rating
title date excerpt tags rating
Perforce Helix Core搭建 2022-12-21 14:51:55 Perforce

Perforce Docker

可以使用这个容器: https://hub.docker.com/r/sourcegraph/helix-p4d

但这个容器是2020年构建的我这里重新调整了一下并且手动构建成功具体可以参考下文。

DockerFile构建

大致步骤如下:

  1. 下载blueroseslol/helix-docker仓库的所有文件。
  2. 构建DockerFile。
cd /home/perforce/helix-docker/helix-p4d/ && \
docker build -f /home/perforce/helix-docker/helix-p4d/Dockerfile -t helix-p4d:2023.5 .

docker build --file ./helix-p4d/Dockerfile --tag helix-p4d:2023.7 .

使用

docker run -d --name helix-p4d\
    -p 1666:1666 \
    -v /home/perforce/p4:/p4 \
    helix-p4d:2023.5
docker run -d \
    -p 1666:1666 \
    -v /home/perforce/p4:/p4 \
    sourcegraph/helix-p4d:2020.2

Github文档

docker run --rm \
    --publish 1666:1666 \
    sourcegraph/helix-p4d:2020.2

默认端口:1666, 默认用户名为 admin, 默认密码: pass12349ers。以下是所有配置的默认值。

NAME=perforce-server
P4HOME=/p4
P4NAME=master
P4TCP=1666
P4PORT=1666
P4USER=admin
P4PASSWD=pass12349ers
P4CASE=-C0
P4CHARSET=utf8
JNL_PREFIX=perforce-server

可以使用--env 覆盖上述环境变量:

docker run --rm \
    --publish 1666:1666 \
    --env P4USER=amy \
    --env P4PASSWD=securepassword \
    sourcegraph/helix-p4d:2020.2

请注意尽管服务器在重启后仍能存活即数据被保留但如果你在初始启动后即镜像的第一次运行在选项被硬编码为Perforce Helix核心服务器自身配置时改变选项它可能会中断。要启动一个长期运行的生产容器记得要把数据目录P4HOME)容器,把--rm标志换成d(分离):

docker run -d \
    --publish 1666:1666 \
    --env P4PASSWD=securepassword \
    --volume ~/.helix-p4d-home:/p4 \
    sourcegraph/helix-p4d:2020.2

推送镜像到Dockerhub

docker tag 9f45f31246ac blueroses/perforce-helix-p4d:2023.5
docker push blueroses/perforce-helix-p4d:2023.5

UE部分操作

编码使用UTF8-no bom

  • 注册源码引擎到EpicGames 经过上面的步骤,源码引擎已经构建成功,但是在对项目就行选择引擎版本的时候,发现并没有这个版本 。这是因为构建的引擎没有注册到EpicGames中找到EpicGames安装目录下的注册器。复制到源码工程并且运行即可。
Launcher\Engine\Binaries\Win64

Perforce

相关概念

Workspace

Workspace可以理解为depot到本地的一个映射对应本地的一个目录。
新建Workspace在p4admin中depot查看在服务器中存放的所有Ddepot仓库

开发的过程中可以有多个Workspace例如一个用来开发一个用来更新验证保证提交没有错误但一般只推荐有一个Workspace