Docker Compose bind mount не работает в GitHub Actions - PullRequest
0 голосов
/ 29 марта 2020

Если я запускаю команду Docker Compose в GitHub Actions, которая использует монтирование привязки, она говорит, что исходный каталог не существует. Вот ошибка.

Cannot create container for service chat: invalid mount config for type "bind": bind source path does not exist: /__w/omni-chat/omni-chat

Мне кажется, проблема в том, что каталог root неправильно передается в действия GitHub. Я указал абсолютный путь как обычный ., но я не знаю, какие предостережения GitHub Actions имеет в отношении этого.

Вот упрощенная версия моего рабочего процесса.

on: push
jobs:
  test-server:
    runs-on: ubuntu-latest
    container: docker/compose
    steps:
      - uses: actions/checkout@v2
      - run: docker-compose run --rm chat gradle test

Вот упрощенная версия моего Docker Compose файла.

version: '3.7'
services:
  chat:
    image: gradle:6.3-jdk8
    command: bash
    volumes:
      - type: bind
        source: .
        target: /home/gradle
      - type: volume
        source: gradle-cache
        target: /home/gradle/.gradle
volumes:
  gradle-cache:

Если вам нужны полные сведения, вот точный прогон .

1 Ответ

0 голосов
/ 29 марта 2020

Оказывается, стоит использовать предустановленную Docker Compose Installation. Поэтому простое удаление указанного container позволит работать привязным монтировкам, поскольку это больше не сценарий Docker -in- Docker.

...