在 FreeBSD 上安装 GitLab Runner
本文档是基于官方英文文档的中文翻译与整理,详细说明了在 FreeBSD 系统上安装和配置 GitLab Runner 的完整步骤,适用于希望将其作为服务运行的用户。
概述
- 版本状态: FreeBSD 版本作为前沿(bleeding edge)版本提供。
- 重要提示: 请务必阅读 FAQ 部分,其中描述了 GitLab Runner 最常见的一些问题。
安装步骤
以下是 FreeBSD 系统下安装和配置 GitLab Runner 的步骤。
1. 创建 gitlab-runner 用户和组
首先,需要创建运行 GitLab Runner 服务的专用用户和组。
sudo pw group add -n gitlab-runner
sudo pw user add -n gitlab-runner -g gitlab-runner -s /usr/local/bin/bash
sudo mkdir /home/gitlab-runner
sudo chown gitlab-runner:gitlab-runner /home/gitlab-runner
2. 下载二进制文件
根据你的系统架构,下载对应的 GitLab Runner 二进制文件。
-
对于 amd64 系统:
bash sudo fetch -o /usr/local/bin/gitlab-runner https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/binaries/gitlab-runner-freebsd-amd64 -
对于 i386 系统:
bash sudo fetch -o /usr/local/bin/gitlab-runner https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/binaries/gitlab-runner-freebsd-386
提示:你可以下载任何已发布版本的二进制文件,具体方法请参考 Bleeding Edge - 下载其他已标记的版本。
3. 赋予执行权限
下载完成后,需要赋予二进制文件可执行权限。
sudo chmod +x /usr/local/bin/gitlab-runner
4. 创建日志文件
创建一个空的日志文件,并为其设置正确的所有者。
sudo touch /var/log/gitlab_runner.log && sudo chown gitlab-runner:gitlab-runner /var/log/gitlab_runner.log
5. 创建服务脚本
GitLab Runner 需要配置为系统服务。首先确保 rc.d 目录存在。
mkdir -p /usr/local/etc/rc.d
然后,创建服务控制脚本 /usr/local/etc/rc.d/gitlab_runner。
- 对于 Bash 用户,可以使用以下命令直接创建:
```bash sudo bash -c 'cat > /usr/local/etc/rc.d/gitlab_runner' << "EOF" #!/bin/sh # PROVIDE: gitlab_runner # REQUIRE: DAEMON NETWORKING # BEFORE: # KEYWORD:
. /etc/rc.subr
name="gitlab_runner" rcvar="gitlab_runner_enable"
user="gitlab-runner" user_home="/home/gitlab-runner" command="/usr/local/bin/gitlab-runner" command_args="run" pidfile="/var/run/${name}.pid"
start_cmd="gitlab_runner_start"
gitlab_runner_start() { export USER=${user} export HOME=${user_home} if checkyesno ${rcvar}; then cd ${user_home} /usr/sbin/daemon -u ${user} -p ${pidfile} ${command} ${command_args} > /var/log/gitlab_runner.log 2>&1 fi }
load_rc_config $name run_rc_command $1 EOF ```
- 如果未使用 Bash,请手动创建文件
/usr/local/etc/rc.d/gitlab_runner,并包含以下内容:
```sh #!/bin/sh # PROVIDE: gitlab_runner # REQUIRE: DAEMON NETWORKING # BEFORE: # KEYWORD:
. /etc/rc.subr
name="gitlab_runner" rcvar="gitlab_runner_enable"
user="gitlab-runner" user_home="/home/gitlab-runner" command="/usr/local/bin/gitlab-runner" command_args="run" pidfile="/var/run/${name}.pid"
start_cmd="gitlab_runner_start"
gitlab_runner_start() { export USER=${user} export HOME=${user_home} if checkyesno ${rcvar}; then cd ${user_home} /usr/sbin/daemon -u ${user} -p ${pidfile} ${command} ${command_args} > /var/log/gitlab_runner.log 2>&1 fi }
load_rc_config $name run_rc_command $1 ```
6. 使服务脚本可执行
创建脚本后,需要赋予其执行权限。
sudo chmod +x /usr/local/etc/rc.d/gitlab_runner
7. 启用并启动服务
最后,启用 gitlab-runner 服务,并立即启动它。
sudo sysrc gitlab_runner_enable=YES
sudo service gitlab_runner start
注意:如果你不希望
gitlab-runner服务在系统重启后自动启动,可以使用以下命令仅启动一次: ~~~bash sudo service gitlab_runner onestart ~~~
文档来源:GitLab 官方文档 - Install GitLab Runner on FreeBSD
整理日期:2026年1月2日
归档说明:此中文 Markdown 文档为官方英文文档的忠实翻译与整理,用于技术存档与参考。