Докер: Попытка поделиться локальным путем Windows с контейнером... это не работает
Новое в Docker, и работает Docker Toolbox
на Win 10 x64.
Я пытаюсь поделиться (смонтировать) локальный путь Windows с контейнером (в данном случае Portainer), чтобы контейнер сохранял все свои настройки конфигурации локально на моем ПК, чтобы я всегда мог обновить контейнер, оставаясь при этом это постоянная конфигурация.
Я прочитал / посмотрел много учебников, справочников, документов, видео и т. Д., Я пытаюсь сделать то, что они, кажется, объясняют, но когда я создаю контейнер с локальным путем монтирования, а затем захожу в контейнер, установить некоторые настройки конфигурации, а затем посмотрите на путь Windows, который я смонтировал, там ничего не сохраняется.
Не уверены, в чем проблема?
Вот пример docker cmd, который я запускаю:
docker run -it -v /c/Servers/DockerConfigs/Portainer:/data :P portainer/portainer
Насколько я понимаю, все, что хранится в /data
папка в контейнере также должна быть сохранена в папку Windows на хосте C:\Servers\DockerConfigs\Portainer
, но ничего не сохраняется в этой папке Windows...
Я также попытался скопировать некоторые файлы на хосте в эту папку Windows, а затем в контейнере просмотра /data
папка, чтобы увидеть, если они появляются с помощью ls -a
но опять же, ничего не появляется там...
Кто-нибудь знает, что мне не хватает?
4 ответа
Наконец-то узнал ответ благодаря этой теме: Как смонтировать каталог хоста в контейнере Docker
Оказывается, самый простой способ (в Windows) - это обязательно смонтировать ваши папки из Users
каталог и использовать --mount
команда при запуске контейнера.
т.е.
docker run -P -it --name organizr --mount src="/c/Users/My PC/AppData/Roaming/DockerConfigs/Organizr",dst=/config,type=bind organizrtools/organizr-v2:latest
Убедитесь, что диск C включен для совместного использования: Right click on the whale icon -> Settings -> Shared Drives
, Также рассмотрите возможность использования более новой версии Docker Desktop для Windows.
Прекратите что-либо делать и сделайте следующее:
- Удалите Docker Desktop (стабильный)
- Перезагрузите компьютер с Windows
- Установите Docker Desktop (Edge)
- проблема решена
У меня тоже была такая же проблема. Итак, я сделал следующие шаги.
Сначала вытащите контейнер windowsserver (вы можете вытащить любой контейнер в зависимости от ваших требований).
Перейдите на рабочий стол докера, выберите изображения.
Вы можете увидеть изображение, которое вы вытащили. Выберите «Выполнить», затем измените настройки. То есть установите имя контейнера, путь на вашем компьютере, который вы хотите смонтировать, путь к контейнеру (для этого я просто дал C:\data)
Затем сохраните настройки
Перейдите в контейнеры / приложения на рабочем столе докера.
Вы можете увидеть новое имя контейнера, которое вы создали.
* Open cli этого контейнера>- (этот символ)
- тогда откроется cli с путем C:\.
* Введите dir . Вы можете увидеть данные папки, созданные там.
Теперь добавьте несколько файлов в смонтированную папку на вашем локальном компьютере и посмотрите, отражается ли это в папке данных контейнера.