Запустите docker-compose без установки - PullRequest
0 голосов
/ 27 июня 2019

Я пытаюсь запустить docker-compose без установки, поэтому использую репозиторий docker:composedocker run).

Итак, я попробовал так:

docker run -ti --rm  -v $PWD:/XXX docker/compose:1.24.1 up -d

Проблема в том, что я не знаю имя директории контейнера docker/compose (здесь XXX) для монтирования моей текущей папки как тома.

Есть идеи ...?

Спасибо!

Ответы [ 2 ]

1 голос
/ 27 июня 2019

Вы можете привязать свой локальный docker-compose.yaml к любому месту, просто не забудьте сказать docker-compose использовать -f, как показано ниже:

docker run -ti --rm  -v /var/run/docker.sock:/var/run/docker.sock -v ${PWD}:/code docker/compose:1.24.1 -f /code/docker-compose.yaml up -d

Между тем, не забудьте добавить docker.sock вашего хост-компьютера bind mount в контейнер.

0 голосов
/ 27 июня 2019

Эта папка XXX может быть чем угодно внутри контейнера. В основном в -v варианте docker run. Его -v [каталог хоста]: [каталог контейнера].

Если вы пытаетесь запустить docker-compose внутри контейнера, выполните следующие действия:

  • Создать каталог на хосте mkdir /root/test
  • Создать docker-compose.yaml файл со следующим содержимым:
version: '2'

services:
  web:
    build: .
    ports:
     - "5000:5000"
    volumes:
     - .:/code
  redis:
    image: redis
  • Выполнить команду docker run для запуска docker-compose внутри контейнера.
docker run -itd -v /var/run/docker.sock:/var/run/docker.sock -v /root/test/:/var/tmp/ docker/compose:1.24.1  -f /var/tmp/docker-compose.yaml up -d

ПРИМЕЧАНИЕ: Здесь каталог / var / tmp внутри контейнера будет содержать файл docker-compose.yaml, поэтому я использовал опцию -f, чтобы указать полный путь к файлу yaml.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...