2017-05-30 14 views
2

Ich habe versucht, meine Setup-Arbeit mit gitlab-ci zu bekommen. Ich habe eine einfache Gitlab-ci.yml DateiGitLab-CI: Keine Verbindung zu einem nicht laufenden Container möglich

build_ubuntu: 
    image: ubuntu:14.04 
    services: 
    - rikorose/gcc-cmake:gcc-5 
    stage: build 
    script: 
    - apt-get update 
    - apt-get install -y python3 build-essential curl 
    - cmake --version 
    tags: 
    - linux 

ich ein Ubuntu 14.04 LTS mit gcc und cmake erhalten möchten (Version apt-get ist zu alt) installiert. Wenn ich es lokal verwenden (über Docker --link Befehl) alles funktioniert, aber wenn der Gitlab-ci-Läufer wird es verarbeitet ich den folgenden Waring (was in meinem Fall ist ein Fehler)

Running with gitlab-ci-multi-runner 9.2.0 (adfc387) 
on xubuntuci1 (19c6d3ce) 
Using Docker executor with image ubuntu:14.04 ... 
Starting service rikorose/gcc-cmake:gcc-5 ... 
Pulling docker image rikorose/gcc-cmake:gcc-5 ... 
Using docker image rikorose/gcc-cmake:gcc-5 
ID=sha256:ef2ac00b36e638897a2046c954e89ea953cfd5c257bf60103e32880e88299608 
for rikorose/gcc-cmake service... 
Waiting for services to be up and running... 

*** WARNING: Service runner-19c6d3ce-project-54-concurrent-0-rikorose__gcc- 
cmake probably didn't start properly. 

Error response from daemon: Cannot link to a non running container: /runner- 
19c6d3ce-project-54-concurrent-0-rikorose__gcc-cmake AS /runner-19c6d3ce- 
project-54-concurrent-0-rikorose__gcc-cmake-wait-for-service/runner- 
19c6d3ce-project-54-concurrent-0-rikorose__gcc-cmake 

Hat jemand weiß, wie ich das beheben kann?

Vielen Dank im Voraus Tonka

+0

Wie Sie laufen 'rikorose/gcc-Cmake: gcc-5' lokal? –

+0

docker run -itd rikorose/gcc-cmake: gcc-5 --link = myrunningubuntucontainer – tonka

+0

Benutzt du geteilte Läufer oder hast du deinen eigenen Läufer aufgestellt? –

Antwort

3

Sie müssen die Gitlab Läufer Behälter mit

--privileged true 

starten, aber das ist nicht genug. Alle Runner-Container, die von gitlab nach der Registrierung gesponnen werden, müssen ebenfalls privilegiert sein. So müssen Sie die Gitlab Starter

docker exec -it runner /bin/bash 
nano /etc/gitlab-runner/config.toml 

und ändern privilegierte Flagge von falschen zu echten montieren:

privileged = true 

, dass das Problem lösen!

+0

Genau das hat es für mich behoben, vielen Dank! Soweit ich das sehe ist es in der offiziellen Anleitung nicht erwähnt .... – JosephH

2

@Wendell Muntslag Arbeitete für mich! Das ist mein Docker Gastgeber /srv/gitlab-runner/config/config.toml

concurrent = 1 
check_interval = 0 

[[runners]] 
    name = "b3a50be8fc85" 
    url = "https://gitlab.com" 
    token = "f2xxxxxx_secret_gitlab-ci_token_here_xxxx49" 
    executor = "docker" 
    [runners.docker] 
    tls_verify = false 
    image = "tmaier/docker-compose:latest" 
    privileged = true 
    disable_cache = false 
    volumes = ["/var/run/docker.sock:/var/run/docker.sock", "/cache"] 
    shm_size = 0 
    [runners.cache] 
Verwandte Themen