Это вообще не считается лучшей практикой вообще.Один образ Docker должен быть автономным и включать весь код приложения и библиотеки, необходимые для его запуска.Так что кроме вопросов, я никогда не сталкивался с образом Docker, который предлагает использовать тома для вставки любого кода в контейнеры.
(Единственное исключение - изображение node
; часто возникает вопрос SO об использованиианонимный том для node_modules
каталогов [TL; DR: изменения в package.json
никогда не обновляют том], но даже тогда он пытается избежать совместного использования дерева библиотек с другими контекстами.)
Одним из полезных методов является создание промежуточного базового образа, который содержит некоторый набор библиотек, а затем создание приложения поверх этого.На механическом уровне, для конкретной версии образа ubuntu:18.04
, я думаю, что все другие образы, основанные на этом, используют физически тот же libc.so.6
, но с точки зрения Docker это деталь реализации.