gitlab runner使用docker報錯(x509: certificate signed by unknown authority)定位


如果gitlab runner使用docker,docker是普通配置,配置好后,runner就可以正常執行任務了。

 

另外一個環節Docker配置了tls加密連接,添加runner后,runner的配置tls_verify 字段值為true:

tls_verify = true

執行任務時則會報錯:

ERROR: Preparation failed: error during connect: Get https://127.0.0.1:2376/v1.25/info: x509: certificate signed by unknown authority (executor_docker.go:979:0s)

 

搜索錯誤原因,提示是docker找不到tls相關的證書,但是git-runner的主機上已經配置好了證書,docker命令可以正常執行。

仔細閱讀gitlab文檔,在https://docs.gitlab.com/runner/configuration/advanced-configuration.html里發現了tls_cert_path這個參數,

用來配置tls證書的路徑的。

 在gitlab-runner的配置文件路徑下/etc/gitlab-runner/config.toml,打開文件,

在runner中配置runner.docker的tls_cert_path字段值為tls文件所在路徑,然后重啟gitlab-runner即可

[[runners]]

  name = "root_test2"

  url = "http://10.10.10.10/"

  token = "df6bcfdbb75332d19a7712ca23b130"

  executor = "docker"

  [runners.custom_build_dir]

  [runners.docker]

    host = "tcp://127.0.0.1:2376"

    tls_verify = true

    tls_cert_path = "/root/.docker/"

    image = "gitlab:lasted"

    privileged = false

    disable_entrypoint_overwrite = false

    oom_kill_disable = false

    disable_cache = false

    volumes = ["/root/.docker:/root/.docker","/cache"]

    shm_size = 0

  [runners.cache]

    [runners.cache.s3]

    [runners.cache.gcs]

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM