Просто используйте базовый образ Alpine и полностью установите PostgreSQL из официальных пакетов Alpine: postgresql
и postgresql-contrib
. Последней стабильной версией Alpine, предоставляющей PostgreSQL 9.6, является версия 3.6, которая отстает от двух версий, но все еще поддерживается. Alpine v3.7 обеспечивает только 10.4.
Также не указывайте точную версию apk add
. Alpine предоставляет только одну версию пакета для каждой ветви (например, v3.7, v3.8, edge). Как только мы выпустим postgresql-contrib 9.6.9-r1 или 9.6.10-r0 (например, исправление некоторых проблем безопасности), 9.6.9-r0 больше не будет доступен, и ваш apk add postgresql-contrib=9.6.9-r0
не удастся выполнить.
Эти специализированные изображения Docker, «упаковывающие» что-то, что уже должным образом упаковано в Alpine, по большей части абсолютно бесполезны и просто вызывают путаницу и проблемы. Я даже не могу сосчитать, сколько раз я отвечаю на проблему такого типа на SO.