首页 文章

运行Gitlab CI Runner以在shell执行模式下构建docker

提问于
浏览
0

我有一个以下配置的跑步者

[[runners]]
  name = "my-runner-02"
  url = "https://ci.gitlab.com/"
  token = TOKEN
  executor = "shell"
  [runners.cache]

我尝试让它通过shell执行运行一个简单的docker构建脚本 . 我在机器上安装了docker引擎 . 我的gitlab-ci.yml文件如下所示:

before_script:
  - sudo docker info

build_image:
  script:
    - sudo docker build -t booking-app .
    - sudo docker run -d -p 7771:7771 booking-app

我收到以下错误:

Running with gitlab-runner 10.8.0 (079aad9e)
  on my-runner-02 aa596928
Using Shell executor...
No passwd entry for user 'gitlab-working-directory=/home/gitlab-runnerrunner'
ERROR: Job failed: exit status 1

所以这是用户gitlab-runner的问题吗?我不知道如何处理passwd条目,gitlab-working-directory或任何用户权限 . 提前致谢 .

1 回答

  • 0

    您正在使用'sudo docker'调用docker . 我很确定它要求'sudo'的密码bc .

    你能删掉所有'sudo'吗?我认为他们是问题所在 .

    • 将执行者从shell更改为docker

    • 确保绑定/var/run/docker.sock

相关问题