Я хотел бы создать образ докера, который будет основой моих контейнеров, но я бы не хотел создавать контейнер непосредственно из него. Является ли это возможным?
Каждое изображение (кроме scratch
, что является особым случаем) можно использовать для создания контейнера, поэтому это невозможно.
В качестве возможного обходного пути вы можете добавить
ENTRYPOINT false
чтобы четко указать, что вы хотите, чтобы кто-нибудь запускал из него контейнеры. Конечно, это не мешает созданию контейнера, но ...
Вы не можете предотвратить создание контейнера из ваших изображений, но вы можете запретить ему запускать что-либо. Просто не включайте в контейнер ничего работоспособного.
Пример базового изображения, которое делает это: centurylink/ca-certs
(который ужасно устарел; не используйте его по прямому назначению). Он основан на scratch
и его единственным содержимым является файл пакета сертификатов CA. Из этого контейнера невозможно запустить что-либо, поскольку он не содержит скриптов или исполняемых файлов.