habra.16: RSS с сайта habrahabr.ru

От: habrabot (difrex,1) 03.04.18 07:45 UTC
Кому: All
Тема: Linux-дистрибутив from scratch для сборки Docker-образов — наш опыт с dappdeps
![][1]


Сборка образов для Docker на основе базового образа, как правило, предполагает вызов команд в окружении этого базового образа. Например — вызов команды apt-get, которая есть в базовом образе, для установки новых пакетов.

Часто возникает необходимость доустановить в базовую систему некоторый набор утилит, с помощью которых происходит установка или сборка некоторых файлов, которые требуются в итоговом образе. Например, чтобы собрать Go-приложение, надо установить компилятор Go, положить все исходные коды приложения в базовом образе, скомпилировать требуемую программу. Однако в итоговом образе требуется лишь скомпилированная программа без всего набора утилит, который использовался для компиляции этой программы.

Проблема известная: одним из путей её решения может быть сборка вспомогательного образа и перенос файлов из вспомогательного образа в результирующий. Для этого появились [Docker multi-stage builds][2] или [образы-артефакты в dapp][3]. И данный подход идеально решает проблему подобную переносу результатов компиляции исходных кодов в итоговый образ. Однако он не решает все возможные проблемы…
[Читать дальше →][4]

[1]: https://habrastorage.org/webt/uy/gw/ey/uygweyxouk2t1fg0948fq4mws0w.png
[2]: https://docs.docker.com/develop/develop-images/multistage-build/
[3]: https://flant.github.io/dapp/artifact_for_advanced_build.html
[4]: https://habrahabr.ru/post/352432/?utm_source=habrahabr&utm_medium=rss&utm_campaign=352432#habracut
[6620 / 6624]