Подтвердить что ты не робот

Как развернуть файлы Dockerfile и приложения в boot2docker

Я только начинаю изучать Docker, и я пытаюсь получить простую настройку с boot2docker в Windows. Я не мог найти в любом учебнике или примерах онлайн, как сделать мои файлы проектов доступными для VM2 boot2docker.

Я загрузил boot2docker, и ему удалось установить его и запустить и запустить. Я также могу использовать ssh и запустить пример приветствия world docker, поэтому я знаю, что у меня есть рабочая установка Docker в VM.

Теперь вопрос. Как получить мои файлы Dockerfile и мои приложения на VM-загрузке, чтобы я мог создать контейнер Docker?

Другими словами, я пытаюсь сделать это из VM2 boot2docker:

$ cd /some-directory-from-my-host-os
$ docker build .

Я пробовал следовать инструкциям https://github.com/boot2docker/boot2docker#folder-sharing и настроить общий ресурс SAMBA, и я могу успешно подключиться из Windows к общему ресурсу в \\192.168.59.103\data, но это не означает, t скажите мне, как получить доступ к тому же самому каталогу из VM2 boot2docker.

Мне кажется, что ответ может быть очевиден, но я уверен, что я не единственный, кто ударит по этой стене. Спасибо за вашу помощь!


Обновление - теперь встроено в boot2docker 1.3!

Так как boot2docker 1.3, добавлена ​​возможность монтирования общей папки, поэтому виртуальная машина может совместно использовать вашу папку dev. Дополнительная информация здесь: https://github.com/boot2docker/boot2docker#virtualbox-guest-additions

4b9b3361

Ответ 1

Не уверен, что это помогает под окнами. Но для Mac см.:

boot2docker вместе с дополнениями для VirtualBox
Как монтировать/Пользователи в boot2docker

https://medium.com/boot2docker-lightweight-linux-for-docker/boot2docker-together-with-virtualbox-guest-additions-da1e3ab2465c

tl; dr Создайте собственный пользовательский boot2docker.iso с помощью VirtualBox Guest Дополнения (см. ссылка) или загрузите http://static.dockerfiles.io/boot2docker-v1.0.1-virtualbox-guest-additions-v4.3.12.isoи сохраните его в ~/.boot2docker/boot2docker.iso.

Ответ 2

Следуя вашему текущему прогрессу и предполагая, что ваш контейнер samba запущен, вы можете найти путь к папке /data на вашей Boot2docker VM, выполнив:

$ docker inspect <samba_container_id>

В этом списке перечислены детали конфигурации контейнеров. Рядом с самым дном вы увидите:

"Тома": {

    "/data": "/mnt/sda1/var/lib/docker/vfs/dir/<long_id_here>

Это ваш boot2docker vm/путь данных. Просто cd в эту папку

$ cd /mnt/sda1/var/lib/docker/vfs/dir/<long_id_here>

В Проводнике Windows перейдите к:

\\192.168.59.103\data

Теперь вы можете вставлять/копировать/создавать некоторые файлы в эту папку данных, и вы должны увидеть, что они заполняются на вашей VM Boot2docker по пути: /mnt/sda1/var/lib/docker/vfs/dir/<long_folder_id_here>

Ответ 3

IMHO лучшим способом было бы использовать scp. Как вы можете ssh, вы можете использовать winscp для отправки файла Docker в виртуальную машину.

Ответ 5

В Boot2Docker измените каталог "cd/c", вы увидите папки "Пользователи" в Windows. Поместите контент, который хотите поделиться, в предпочитаемых папках пользователей.

Ответ 6

Я использую бродягу с этим полем: https://vagrantcloud.com/yungsang/boot2docker

и я изменил файл Vagrant для использования (auto-) rsync в Windows:

  rsync_args = ["--verbose", "--archive", "--delete", "-z"]
  rsync_auto = true
  rsync_exclude = [".vagrant/"]
  config.vm.synced_folder ".", "/vagrant", rsync__args: rsync_args, rsync__exclude: rsync_exclude, rsync__auto: rsync_auto, type: "rsync"