私は、独自のubuntuサーバ上で簡単なgitlab-runnerをセットアップしています。gitlab-runnerはユーザではなくrootとしてランダムに実行されます。gitlab-runner
sudo gitlab-runner register -n --url https://gitlab.com/ --registration-token {{GITLAB_REGISTRATION_TOKEN}} --executor shell --description "{{GITLAB_RUNNER_DESCRIPTION}}"
を実行しているだけgitlabランナープロセス(ps -ef
)は次のとおりです:
/usr/bin/gitlab-runner run --working-directory /home/gitlab-runner --config /etc/gitlab-runner/config.toml --service gitlab-runner --syslog --user gitlab-runner
マイ/etc/gitlab-runner/config.toml
設定ファイルが含まれています
concurrent = 1
check_interval = 0
[[runners]]
name = "iouze/landing"
url = "https://gitlab.com/"
token = "0530b.....6f9"
executor = "shell"
[runners.cache]
私のCIパイプラインをそれを使用して登録されましたトリガーは、ユーザーがgitlab-runnerユーザーとしてピックアップされることがあります。その場合、(sheell executorとして)正しく実行されます。
しかし、時にはrootとして実行されます。この場合、ドッカーエグゼキュータとして実行され、エラーが発生します(スクリプトが予期しない環境で実行されているため)。
サービス上に--userが明確に存在する場合、なぜrootとして実行されるのですか?