无法通过CircleCI集成和docker-compose连接到docker deamon

lin*_*gan 2 docker circleci docker-compose

尝试在我们的项目中设置CircleCI。我们docker-compose up --build习惯于正常运行它。

这是我们的config.yml:

version: 2
jobs:
  build:
    working_directory: ~/tmp
    docker:
      - image: circleci/node:9.4.0
    branches:
      only:
        - circleci
    steps:
      - checkout

      - setup_remote_docker

      - run:
          name: Install Docker client
          command: |
            set -x
            VER="v17.12.0-ce"
            sudo curl -L -o /usr/bin/docker-$VER.tgz https://github.com/docker/docker-ce/archive/$VER.tar.gz
            sudo tar x -C /tmp -f /usr/bin/docker-$VER.tgz
            sudo chmod +x /usr/bin/docker*
            sudo rm /usr/bin/docker-$VER*.tgz

      - run:
          name: Install Docker Compose
          command: |
            VER="1.18.0"
            sudo curl -L "https://github.com/docker/compose/releases/download/$VER/docker-compose-$(uname -s)-$(uname -m)" -o /usr/bin/docker-compose
            sudo chmod +x /usr/bin/docker-compose

      - run:
          name: Start container and verify it's working
          command: |
            set -x
            sudo docker-compose up --build
Run Code Online (Sandbox Code Playgroud)

这个错误我们一直作为输出输出:

ERROR: Couldn't connect to Docker daemon at http+docker://localunixsocket - is it running?
Run Code Online (Sandbox Code Playgroud)

我们缺少什么?

Fel*_*ech 5

这里的问题是您的配置做得太多。使用CircleCI Docker便利映像的好处是预安装了Docker之类的工具。我将您的配置修改为应该可以使用的配置:

version: 2
jobs:
  build:
    docker:
      - image: circleci/node:9.4.0
    branches:
      only:
        - circleci
    steps:
      - checkout
      - setup_remote_docker
      - run:
          name: Start container and verify it's working
          command: docker-compose up --build
Run Code Online (Sandbox Code Playgroud)

尊敬,

Ricardo N Feliciano
CircleCI开发人员