Как запустить окружность в MacOS локально с заданием, которое использует Docker? - PullRequest
1 голос
/ 25 февраля 2020

Я столкнулся с проблемой при попытке запустить circleci build локально в macOS при попытке создать docker образ.

Пример .config файла

version: 2
jobs:
  build:
    docker:
      - image: cimg/base:2020.01
    steps:
      - setup_remote_docker
      - run:
          name: Run Docker
          command: docker run cimg/base:2020.01 echo "hello"

После запуска circleci build

failed to dial gRPC: cannot connect to the Docker daemon. Is 'docker daemon' running on this host?: dial unix /var/run/docker.sock: connect: permission denied

Я рассмотрел несколько похожих вопросов, таких как этот , но ни одно из их решений не работает.

1 Ответ

1 голос
/ 25 февраля 2020

Мне удалось адаптировать решение здесь для работы с circleci.

Просто добавьте команду sudo chown circleci:circleci /var/run/docker.sock в конфигурацию вашего круга.

Так это будет выглядеть как:

version: 2
jobs:
  build:
    docker:
      - image: cimg/base:2020.01
    steps:
      - setup_remote_docker
      - run: if [ -e /var/run/docker.sock ]; then sudo chown circleci:circleci /var/run/docker.sock; fi
      - run:
          name: Run Docker
          command: docker run cimg/base:2020.01 echo "hello"

И результат

====>> Run Docker
  #!/bin/bash -eo pipefail
docker run cimg/base:2020.01 echo "hello"
hello
Success!
...