Create gitlab-runner

1. 安装 gitlab-runner.exe

powershell 复制代码
# Run PowerShell: https://docs.microsoft.com/en-us/powershell/scripting/windows-powershell/starting-windows-powershell?view=powershell-7#with-administrative-privileges-run-as-administrator
# 1. 创建目录,例如: C:\GitLab-Runner
New-Item -Path "$env:userprofile\run\gitlab_runner" -ItemType Directory

# 2. 切换到该目录
cd "$env:userprofile\run\gitlab_runner"

# 3. 下载二进制文件
Invoke-WebRequest -Uri "https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-windows-amd64.exe" -OutFile "gitlab-runner.exe"

# 4. 注册完成后,安装并启动服务
.\gitlab-runner.exe install
.\gitlab-runner.exe start

2. 注册 Runner

powershell 复制代码
.\gitlab-runner.exe register --url http://gitlab.ioptic.cn --token glrt-wsDxw0qyWj0v57guV705r286MQpwOmEKdDozCnU6Mw8.01.17147tm3v

2.1 指定 Runner 使用的 Shell

指定 gitlab runner 运行的 shell 为 pwsh(需要手动修改配置文件):

powershell 复制代码
[[runners]]
  name = "windows_msvc"
  url = "http://gitlab.ioptic.cn"
  executor = "shell"
  shell = "pwsh"

3. 使用指定账户运行

3.1 如果希望 Runner 使用 vi 账户?

GitLab Runner 支持指定 Windows 服务账户。

powershell 复制代码
.\gitlab-runner.exe stop

.\gitlab-runner.exe uninstall

.\gitlab-runner.exe install `
    --user ".\vi" `
    --password "你的Windows账户密码"

.\gitlab-runner.exe start

也可以使用 Administrator 账户:

powershell 复制代码
.\gitlab-runner.exe install `
    --user ".\Administrator" `
    --password "账户密码"

3.2 修改 Windows 本地安全策略

如果.\gitlab-runner.exe start 执行出现下面的问题:

复制代码
This service account does not have the required user right "Log on as a service."

解决方案如下:

  1. 按 Win + R,输入 secpol.msc。
  2. 进入 Local Policies → User Rights Assignment(本地策略 → 用户权限分配)。
  3. 找到 Log on as a service / 作为服务登录。
  4. 双击打开。
  5. 点击 Add User or Group(添加用户或组)。
  6. 输入 .\Administrator。
  7. 点击 Check Names,确认账户。
  8. 点击 Apply → OK。

4. 确认与验证

4.1 确认服务使用的账户

powershell 复制代码
Get-CimInstance Win32_Service -Filter "Name='gitlab-runner'" | Format-List Name, State, StartName, PathName

4.2 重启并验证 Runner

powershell 复制代码
Restart-Service gitlab-runner
.\gitlab-runner.exe verify
相关推荐
master3361 天前
GitLab 10.x → 19.5.x 升级路线图
gitlab
长不大的杨瑞杰1 天前
OpenCode v2 GitLab 集成实战:Issue 驱动开发、MR 审查与 CI/CD 最小权限
人工智能·ci/cd·gitlab·ai编程·opencode
极小狐7 天前
极狐GitLab万人并发架构实践,大规模组织的扩容路线图
架构·gitlab·极狐gitlab
Lvan的前端笔记8 天前
GitLab CI 环境变量整理
ci/cd·gitlab
李迟9 天前
CICD实例:解决GitLab Runner无法执行CICD问题
gitlab
hanjq_code11 天前
gitlab本地文件 跨分支 忽略改动 不提交
gitlab
极小狐11 天前
极狐GitLab集群高可用方案,多节点架构与故障自愈实践
架构·gitlab·高可用·极狐gitlab
极小狐12 天前
极狐GitLab主备同步延迟治理,复制滞后监控与优化方法
gitlab·极狐gitlab·geo容灾
极小狐12 天前
跨项目流水线报 404 Not Found?CI_JOB_TOKEN 允许名单 9 步排查
ci/cd·gitlab·devops·权限管理·流水线·极狐gitlab·作业令牌