1. 下载可执行文件

    curl -L --output /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64
  2. 增加可执行全县

    chmod +x /usr/local/bin/gitlab-runner
  3. 创建用户

    useradd --comment 'gitlab-runner' --create-home gitlab-runner --shell /bin/bash
  4. 安装为服务

    gitlab-runner install --user=gitlab-runner --working-directory=/home/gitlab-runner
  5. 启动服务

    gitlab-runner start
  6. 查看日志

    journalctl -u gitlab-runner.service -f
  7. 执行 runner 注册

    gitlab-runner register -n \
      --url "https://gitlab.mydomain.com" \
      --registration-token gitlab-runner-token \
      --executor docker \
      --description "runner-desc-xxx" \
      --tag-list "no-tls-docker-runner" \
      --docker-image "docker:24.0.5-cli" \
      --docker-privileged

    解释:

    • --url:gitlab 访问网址
    • --registration-token:gitlab 添加 runner 时候给出的
    • --executor:表示 runner 在 CI/CD 中的执行类型,更多类型请参考《Gitlab Runner Executors》
    • --description:runner 的描述信息
    • --tag-listno-tls-docker-runner表示不开启 tls
    • --docker-image:runner 默认的镜像,如果是私有库,那么需要带上域名和路径,例如:docker.mydomain.com:8080/test/my-app@sha256:xxx
    • --docker-privileged:表示赋予底层更高的权限,可以在 dind(docker in docker)的时候加入这个参数,允许在 docker 中使用 docker(嵌套),参考自官网《use-docker-in-docker》