我在网上搜索了 2 周以来的解决方案,我真的需要一些帮助。
我面临3个问题:
Linux Gitlab-runner 未运行
我一直在尝试用各种方式安装 gilab-runner(GitLab 的官方存储库、手册、docker(。
每次,当我启动命令"gitlab-runner status"时,答案总是"服务器未运行"。我已经尝试了一百万次卸载该服务并重新安装它,但我不想工作。我有各种类型的注册跑步者,有/没有 sudo 用户。没有任何成功。这是我的设置服务器:
配置
乌班图 16.04.1
Docker 容器 gitlab 9.4.3
港口:
- 网络服务:8088
- https : 4433
- 邮递 : 2222
Gitlab-runner 9.5.0
如何复制
-
注册贝壳流道 http://192.168.1.10:8088/
-
启动命令"sudo service gitlab-runner status">
已加载:已加载(/etc/systemd/system/gitlab-runner.service;已启用;供应商预设:已启用( 活动:激活(自动重启((结果:退出代码(自 2017-08-25 15:17:45 CEST 开始;45 年前 进程: 13201 ExecStart=/usr/bin/gitlab-ci-multi-runner run --working-directory/home/gitlab-runner --config/etc/gitlab-runner/config.toml --service gitlab-runner --syslog --user gitlab-runner (code=exited, status=1/FAILURE( 主 PID:13201(代码 = 已退出,状态 = 1/失败(
systemd1:gitlab-runner.service:设备进入故障状态。 systemd1:gitlab-runner.service:失败,结果为"exit-code"。
Windows gitlab-runner 錯誤 500
由于我在Linux中安装gitlab-runner的问题,我尝试将其安装在Windows 10上的另一台计算机上。 它有效,最后命令 gitlab-runner 状态回答我"服务正在运行"(但这只是一个临时解决方案,我真的需要让它在 linux 上运行(。 无论如何,我已经将 CI 脚本添加到测试程序中并启动了作业,但它一遍又一遍地循环。 当我启动命令"gitlab-runner --debug run"时:
...
passfile: true
extension: cmd
job=183 project=19 runner=679ccd01
Using Shell executor... job=183 project=19 runner=679ccd01
Waiting for signals... job=183 project=19 runner=679ccd01
WARNING: Job failed: exit status 128 job=183 project=19 runner=679ccd01
WARNING: Submitting job to coordinator... failed job=183 runner=679ccd01 status=500 Internal Server Error
WARNING: Submitting job to coordinator... failed job=183 runner=679ccd01 status=500 Internal Server Error
...
Gitlab.com 并运行命令
所以我决定将我的项目添加到 gitlab.com 上,以测试它。
git@gitlab.com:sandbox_test/test_ci.git
工作再次无限循环,直到我在Windows计算机上启动命令"gitlab-runner run"。
Dialing: tcp gitlab.com:443 ...
Feeding runners to channel builds=0
Checking for jobs... received job=30315630 repo_url=https://gitlab.com/sandbox_test/test_ci.git runner=d98c0af1
Failed to requeue the runner: builds=1 runner=d98c0af1
Running with gitlab-ci-multi-runner 9.5.0 (413da38)
on Windows_shell_gitlab_com (d98c0af1) job=30315630 project=3992201 runner=d98c0af1
Shell configuration: environment: []
dockercommand: []
command: cmd
arguments:
- /C
passfile: true
extension: cmd
job=30315630 project=3992201 runner=d98c0af1
Using Shell executor... job=30315630 project=3992201 runner=d98c0af1
Waiting for signals... job=30315630 project=3992201 runner=d98c0af1
Job succeeded job=30315630 project=3992201 runner=d98c0af1
为什么需要启动 run 命令才能在 gitlab.com 上完成我的工作? 我希望当我运行一个新作业时,它会自行解决,而无需在 CI 计算机上手动启动 gitlab 运行器......
脚本 .gitlab-ci.yml在 CI 棉绒上验证
stages:
- build
- test
- deploy
build:
stage: build
script:
- echo "building"
test:
stage: test
script:
- echo "test"
我真的需要很快的答案,谢谢你的帮助。 最好的问候,克莱门特
更新 1
我已经解决了我的部分问题:
Linux Gitlab-runner 未运行
- 启动命令"gitlab-runner run --working-directory/home/gitlab-runner --config/etc/gitlab-runner/config.toml --service gitlab-runner --
- syslog --user gitlab-runner"
- 第一个错误:chdir/home/gitlab-runner:没有这样的文件或目录
- 解决方案:sudo mkdir/home/gitlab-runner
- 第二个错误:打开/etc/gitlab-runner/config.toml:权限被拒绝
- 解决方案:sudo chmod 755/etc/gitlab-runner/config.toml
- 第一个错误:chdir/home/gitlab-runner:没有这样的文件或目录
我已经解决了部分问题: Linux Gitlab-runner 未运行
Launch the command "gitlab-runner run --working-directory /home/gitlab-runner --config /etc/gitlab-runner/config.toml --service gitlab-runner --syslog --user gitlab-runner"
First Error : chdir /home/gitlab-runner: no such file or directory
Solution: sudo mkdir /home/gitlab-runner
Second Error : open /etc/gitlab-runner/config.toml: permission denied
Solution : sudo chmod 755 /etc/gitlab-runner/config.toml