GitLab Runner没有运行特权

问题描述 投票:5回答:1

我有一个附加服务的GitLab Runner的问题。每当作业运行时,一旦等待服务完成,它就会给我一个警告:

ContainerStart:来自守护进程的错误响应:无法链接到非运行容器:/ runner-b565e58e-project-4-concurrent-0-mysql-0 AS / runner-b565e58e-project-4-concurrent-0-mysql-0-wait - 用于业务/服务

gitlab-ci.yml

stages:
  - test

test:
  stage: test
  image: primus852/gitlab:latest
  services:
    - name: mysql:latest
      command: ["cp tests/Files/db.sql /docker-entrypoint-initdb.d/"]
...

config.toml

[runners.docker]
    tls_verify = false
    image = "php:fpm-alpine"
    privileged = true
    disable_cache = false
    volumes = ["/var/run/docker.sock:/var/run/docker.sock","/cache"]
    shm_size = 0
...

gitlab-runner就是这样开始的:

sudo docker run -d --name gitlab-runner --privileged --restart always   -v /var/run/docker.sock:/var/run/docker.sock   -v /srv/gitlab-runner/config:/etc/gitlab-runner   gitlab/gitlab-runner:latest

所以我猜privileged的东西有问题,但是有人看到那可能是什么吗?

gitlab gitlab-ci gitlab-ci-runner
1个回答
2
投票

你用command: ["mysqld"]覆盖服务容器command: ["cp tests/Files/db.sql /docker-entrypoint-initdb.d/"],所以服务容器复制文件并在那之后停止,就像你要求的那样。

所以改为command: ["cp tests/Files/db.sql /docker-entrypoint-initdb.d/ & mysqld"]以便在cp-command之后启动mysql

© www.soinside.com 2019 - 2024. All rights reserved.