在 Linux 服务器上搭建 GitLab 并集成 CI(Continuous Integration),通常指使用 GitLab Runner 来运行 .gitlab-ci.yml 中定义的流水线。下面按「从零到可用」的步骤说明。
Ubuntu / Debian
curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.deb.sh | sudo bash
CentOS / RHEL
curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.rpm.sh | sudo bash
sudo apt install gitlab-runner # Ubuntu/Debian
# 或
sudo yum install gitlab-runner # CentOS
在 GitLab 项目中:
Settings → CI/CD → Runners → Project runners
你会看到:
sudo gitlab-runner register
按提示输入:
linux-runner)linux, docker)shell 或 docker)示例(shell 执行器):
Executor: shell
.gitlab-ci.yml在项目根目录创建文件:
stages:
- build
- test
build_job:
stage: build
script:
- echo "Building..."
- make build
test_job:
stage: test
script:
- echo "Testing..."
- make test
提交后,GitLab 会自动触发 CI。
| Executor | 适用场景 |
|---|---|
| shell | 简单脚本、服务器直接执行 |
| docker | 隔离环境、推荐 |
| kubernetes | 大规模集群 |
注册时选择:
Executor: docker
Default image: alpine:latest
sudo gitlab-runner status
sudo gitlab-runner list
activesudo usermod -aG docker gitlab-runner
cache 加速构建artifacts 传递结果如果你愿意,可以告诉我:
我可以直接给你一份可用的 .gitlab-ci.yml 示例。