Копировать файлы из докера на хост при монтировании - PullRequest
0 голосов
/ 04 июля 2019

У меня есть настройка громкости, как это:

volumes:
  - type: bind
    source: //c//Docker/themes
    target: /var/www/html/wp-content/themes

Это работает, но когда я создаю это монтирование, оно удаляет все файлы, которые были в докере по указанному пути.

Есть ли возможность или способ сохранить эти файлы и скопировать их на хост?

1 Ответ

1 голос
/ 05 июля 2019

Монтирование не удаляет данные, которые существуют на пути назначения, оно скрывает их до тех пор, пока вы не удалите точку монтирования, в которой старые данные все еще существуют.Представьте себе, что старые данные существуют под новым томом, который вы смонтировали

Например, если у вас есть wp-content/uploads/ на основном жестком диске и по какой-то причине вы решили иметь отдельный диск для загрузки.Если вы смонтировали новый жесткий диск напрямую, который указывает на путь загрузки, он скроет старые файлы, но не удалит их, поэтому вам необходимо сначала перенести данные перед монтированием.

Поэтому я обычно копирую содержимоесначала из контейнера - при необходимости - к хосту, затем я делаю монтажную часть.Таким образом, вы можете сначала использовать эту команду (я предполагаю, что вы находитесь в Windows - из-за части //c - поскольку я не пользователь Windows, поэтому вам может потребоваться изменить путь при необходимости):

docker cp mycontainer:/var/www/html/wp-content/themes //c//Docker/themes

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

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