При удаленном запуске docker-compose возникает ошибка с монтированием томов

Пытаюсь запустить проект на docker-compose через удаленный сервер. Все работает, но как только добавляю пункт про монтирование тома (volumes) выдает ошибку:

Error response from daemon: invalid mount config for type "bind": invalid mount path: 'C:/Users/user/Projects/my-raspberry-test' mount path must be absolute

Для запуска использую инструменты из PhpStorm

Настройка docker в phpstorm

Сам docker-compose.yml файл выглядит так:

version: "3"

services:
  php:
    image: php:cli
    volumes:
      - ./:/var/www/html/
    working_dir: /var/www/html/
    ports:
      - 80:80
    command: php -S 0.0.0.0:80

По ssh проверил:

  • Daemon запущен,
  • Docker работает (на подобном Dockerfile с теми же задачами),
  • Docker-compose работает (на этом же файле).

Также проверил удаленный запуск docker с использованием phpstorm и файлом:

FROM php:cli
COPY . /var/www/html/
WORKDIR /var/www/html/
CMD php -S 0.0.0.0:80

Это ошибку не выдало и заработало.

ОС на устройствах:

  • ПК: Windows 10
  • Сервер: Fedora Server

Без монтирования тома в docker-compose, все запускается. Может кто-то сталкивался с подобной проблемой? php для примера.


Ответы (1 шт):

Автор решения: Ishi Inanis

Путь должен быть абсолютным для удаленного хоста и сами данные должны быть загружены туда же. То есть нужно загрузить проект на удаленный хост.

Все поправил так:

volumes:
  - /home/peter-alexeev/my-test:/var/www/html/

Также ответ есть здесь https://stackoverflow.com/questions/69802943/when-running-docker-compose-remotely-an-error-occurs-with-mounting-volumes. Там посоветовали еще один вариант решения проблемы

→ Ссылка