Gitlab CI fails with ERROR: Job failed: exit code 1

22,411

Check if this is similar to this thread from a year ago:

It seems docker updated their latest stable images and gitlab has not updated their runners yet, changing the images to be on the 18 major fixes these issues, eg:

image: docker:18-git

variables:
  DOCKER_HOST: tcp://docker:2375/
  DOCKER_DRIVER: overlay2

services:
  - docker:18-dind

In you case, a year later, that would be docker:19-dind, especially if you are using image: docker:latest, which is not a good practice, because "latest" can vary at any time.
image: docker:19-git would be preferable.

Share:
22,411
Niraj Pandey
Author by

Niraj Pandey

Updated on February 24, 2020

Comments

  • Niraj Pandey
    Niraj Pandey about 4 years

    I am pretty new to gitlab ci and I have a project with a pre-existing gitlab configuration which was running fine but after pushing a few code changes, it has now completely stopped working and I can't figure out why. Here is the .gitlab-ci.yml

    stages:
      - build
      - deploy
    
    variables:
      DOCKER_HOST: tcp://localhost:2375
    
    assets:
      stage: build
      image: node:10-alpine
      script:
        - npm ci
        - NODE_ENV=production npm run build
      artifacts:
        expire_in: 1 day
        paths:
          - public/assets
      tags:
        - docker
    
    package:
      stage: deploy
      image: php:7.3-cli-alpine
      dependencies:
        - assets
      before_script:
        - php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
        - php -r "if (hash_file('sha384', 'composer-setup.php') === 'e0012edf3e80b6978849f5eff0d4b4e4c79ff1609dd1e613307e16318854d24ae64f26d17af3ef0bf7cfb710ca74755a') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
        - php composer-setup.php --install-dir=/usr/local/bin --filename=composer
        - php -r "unlink('composer-setup.php');"
      script:
        - composer install --prefer-dist --no-progress --optimize-autoloader --no-scripts
        - rm -fr .git
      artifacts:
        expire_in: 1 day
        paths:
          - .
      tags:
        - docker
    
    docker:
      stage: deploy
      image: docker:latest
      services:
        - docker:18-dind
      dependencies:
        - assets
      script:
        - docker build -t $CI_REGISTRY_IMAGE:latest .
        - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
        - docker push $CI_REGISTRY_IMAGE:latest
      only:
        - master
      tags:
        - docker
    
    deploy:
      stage: deploy
      image: php:7.3-cli-alpine
      dependencies:
        - assets
      before_script:
        - curl -LO https://deployer.org/deployer.phar
        - mv deployer.phar /usr/local/bin/dep
        - chmod +x /usr/local/bin/dep
        - apk add --update openssh rsync
        - eval $(ssh-agent -s)
        - echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add -
        - mkdir -p ~/.ssh
        - chmod 700 ~/.ssh
        - ssh-keyscan -t rsa domain.co.uk >> /root/.ssh/known_hosts
      script:
        - dep deploy -p --tag="$CI_COMMIT_TAG"
      only:
        - tags
      tags:
        - docker
    

    I am consistently getting the following error and I am wondering what has changed and if it is the server or gitlab-ci causing the following issue. I checked the server and it's running fine but there is no docker installed there and I presume the docker is not supposed to be installed on the server for what it is trying to do anyways?

    Checking out a50d58fd as master...
     Skipping Git submodules setup
    Downloading artifacts for assets (447059035)...
    00:01
     Downloading artifacts from coordinator... ok        id=447059035 responseStatus=200 OK token=cp4GCzgJ
    $ docker build -t $CI_REGISTRY_IMAGE:latest .
    00:02
     time="2020-02-24T03:53:41Z" level=error msg="failed to dial gRPC: cannot connect to the Docker daemon. Is 'docker daemon' running on this host?: dial tcp [::1]:2375: connect: connection refused"
     error during connect: Post http://localhost:2375/v1.40/build?buildargs=%7B%7D&cachefrom=%5B%5D&cgroupparent=&cpuperiod=0&cpuquota=0&cpusetcpus=&cpusetmems=&cpushares=0&dockerfile=Dockerfile&labels=%7B%7D&memory=0&memswap=0&networkmode=default&rm=1&session=sja0dvuf6gm0w8tneigulo3ha&shmsize=0&t=registry.gitlab.com%2Fnir.npl%2Fbrayleys-honda%3Alatest&target=&ulimits=null&version=1: context canceled
     ERROR: Job failed: exit code 1