Задать вопрос
@waltaki

Как пробросить папку из контейнера в локальну папку?

Можно ли как-то при run пробросить те файлы, что есть в контейнере на локальную машину?
-v /root/test:/root/test удаляет файлы внутри контейнера (а в контейнере они там были), то есть, там проброс именно от локальной в контейнеру. Но мне нужно наоборот.

Задача изначально такая:
на машине есть 1 фтп сервер, на порту 21 proftpd, и нужно, чтобы пользователя по порту 21 подключались к своим файлам. Важно, что по 1 порту и это разные юзеры.
  • Вопрос задан
  • 8729 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 6
deepblack
@deepblack
Как пробросить папку из контейнера в локальну папку?

Так нельзя сделать.

-v /root/test:/root/test удаляет файлы внутри контейнера

Не удаляет, а монтирует по этому пути.

P.S. Лучше опишите задачу которую требуется решить.
Ответ написан
@Karpion
Я не понял проблему.

На первый взляд - можно пробросить папку из хост-системы в контейнер на нужное место. Контейнер будет видеть её как свою, и снаружи она тоже будет доступна.

Или сделать монтирование как по сети (с той только разницей, что сеть виртуальная, физическая часть сети отсутствует.
Ответ написан
Комментировать
@metajiji
Возьми docker-compose, опиши создание своих контейнеров и вольюмов, создай именованный volume, при создании файлы будут скопированы из контейнера на хост и доступны по пути /var/lib/docker/volumes/имя-вольюма/_data
Эти же файлы доступны и внутри контейнера.
Подробнее в официальной доке: https://docs.docker.com/compose/compose-file/#volumes
Ответ написан
Комментировать
@ofigenn
Не используйте run.
Для подключения к запущенному контейнеру нужно использовать другие команды: docker cp или docker exec.
Ответ написан
Комментировать
@maximmonin
Обычная практика работы с контейнерами, когда нужно вынести часть настроек вовне контейнера предполагает следующее:
Вы просто монтируете например папку -v /tmp:/tmp
А потом содержимое нужных папок внутри контейнера копируете через cp -R /root/test /tmp
Далее из папки забираете содержимое. И подключает ее через -v но уже можете подправить ее настройки
Ответ написан
Комментировать
@ProFfeSsoRr
Сис.админ по Linux
Можно ли как-то при run пробросить те файлы, что есть в контейнере на локальную машину?

Делается наоборот - локальная папка монтируется в контейнере туда, куда нужно.
В контейнере запускается proftpd? У него в конфиге что стоит, что он /home типа слушает? Ну смонтируйте свой /home в /home контейнера, вот и решение задачи (если я правильно её понял конечно).
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы