какой абсолютный путь к папке в докере? - PullRequest
0 голосов
/ 28 августа 2018

Я хочу запустить уже существующее приложение в докере. Приложение взаимодействует с некоторыми файлами в папке. Поэтому я пытаюсь подключить том.

Вот docker-compose:

test:
    container_name: test
    volumes: 
      - C:\test\:\test\

    build: .

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

Раньше было что-то вроде этого:

"test": {
  "Path": "C:\\test\\"
}

Но я не знаю, как получить абсолютный путь к моей папке из докера, поэтому мое приложение может понять, где его искать.

Спасибо

РЕДАКТИРОВАТЬ: похоже, что проблема была на моей стороне: способ, которым я определил тома, создал папку с именем "\ test \" ... делая C: \ test: / test /, вместо этого сделал трюк

1 Ответ

0 голосов
/ 28 августа 2018

Если вы создаете свой собственный образ Docker, вы полностью контролируете структуру файловой системы. Для образов на основе Linux принято следовать стандарту FHS (я думаю, что стандартный образ MySQL хранит свои данные в /var/lib/mysql), но достаточно распространено, чтобы просто хранить данные в подкаталогах корневого каталога (/data или /config). или что нет).

Если у вас есть такая настройка, ваше изображение должно выбрать путь. Если единственное, что есть в конфигурации, это местоположение этого каталога, то можно жестко закодировать его в образе. Тем не менее, вы документируете свое изображение (даже если это просто стандартный файл docker-compose.yml) и упоминаете, что у вас есть этот фиксированный путь; он не должен соответствовать пути к хосту (если есть) в какой-либо конкретной системе.

...