У меня возникают некоторые проблемы при настройке докера для среды разработки для моей команды. До сих пор:
-
Я использовал базовое изображение для запуска контейнера
docker run -t -i ubuntu:latest "/bin/bash"
-
Я установил все инструменты компиляции и сборки в нем
-
Я зафиксировал этот образ и отправил его на наш локальный докер-сервер.
docker commit e239ab... 192.168.10.100:5000/team-dev:beta
Все идет нормально. Теперь, действуя в качестве члена команды:
-
Я тяну образ среды разработки на моем компьютере
docker pull 192.168.10.100:5000/team-dev:beta
-
Я запускаю контейнер:
docker run -t -i 5cca4... "/bin/bash"
На данный момент я рассматриваю свой контейнер как своего рода удаленную машину, в которую я могу работать по SSH.
Я пытаюсь сделать git clone
изнутри контейнера, но это не удается из-за проблемы с публичной клавишей. Я копирую файлы id_rsa * в докер вручную, и клон работает. Затем я пытаюсь отредактировать некоторые исходные файлы, но мои конфигурации vim, конфигурации bash, все сбрасываются, потому что это свежая среда ОС. Что действительно хорошо работает, так это вся моя версионная сборочная среда.
Вот возможные решения, которые я думаю, чтобы помочь мне обойти это.
-
Вытащив базовый образ, используйте файл docker, чтобы добавить все переменные среды с хоста в докер.
Минусы: каждый раз, когда среда моего хоста меняется, bash/vim/git мне нужно обновить dockerfile
-
Используйте том от хоста к контейнеру. Git клонировать и редактировать файлы на хосте. Запустите сценарии сборки и компиляции из докера.
Минусы: контент из тома данных не может быть использован для обновления изображения при необходимости. Я не знаю, должно ли это быть чем-то, что меня должно волновать.
Или я подхожу к этому неправильно?