Docker images for postgres extended with management bash scripts.
at main 49 lines 2.3 kB view raw
1# Variables 2# ------------------------------------------------------------------------------ 3POSTGRES_IMAGE_ID := quay.io/marcosgabarda/postgres 4POSTGIS_IMAGE_ID := quay.io/marcosgabarda/postgis 5 6# Versions to build 7# ------------------------------------------------------------------------------ 8POSTGRES_VERSIONS := 12 13 14 15 16 17 9POSTGRES_LATEST_VERSION := 18 10POSTGIS_VERSIONS := 12-3.0 13-3.1 14-3.4 15-3.4 16-3.5 17-3.6 11POSTGIS_LATEST_VERSION := 18-3.6 12 13# Docker command 14# ------------------------------------------------------------------------------ 15DOCKER := podman 16 17.PHONY: build-postgres push-postgres build-postgis push-postgis build push 18 19build-postgres: 20 @for version in $(POSTGRES_VERSIONS) ; do \ 21 ${DOCKER} build . -f ./postgres/Dockerfile --tag ${POSTGRES_IMAGE_ID}:$$version --build-arg POSTGRES_VERSION=$$version --platform linux/amd64 ; \ 22 done 23 ${DOCKER} build . -f ./postgres/Dockerfile --tag ${POSTGRES_IMAGE_ID}:${POSTGRES_LATEST_VERSION} --tag ${POSTGRES_IMAGE_ID}:latest --build-arg POSTGRES_VERSION=${POSTGRES_LATEST_VERSION} --platform linux/amd64 24 25push-postgres: build-postgres 26 @for version in $(POSTGRES_VERSIONS) ; do \ 27 ${DOCKER} push ${POSTGRES_IMAGE_ID}:$$version ; \ 28 done 29 ${DOCKER} push ${POSTGRES_IMAGE_ID}:${POSTGRES_LATEST_VERSION} 30 ${DOCKER} push ${POSTGRES_IMAGE_ID}:latest 31 32build-postgis: 33 @for version in $(POSTGIS_VERSIONS) ; do \ 34 ${DOCKER} build . -f ./postgis/Dockerfile --tag ${POSTGIS_IMAGE_ID}:$$version --tag ${POSTGIS_IMAGE_ID}:$(word 1, $(subst -, ,$$version)) --build-arg POSTGIS_VERSION=$$version --platform linux/amd64 ; \ 35 done 36 ${DOCKER} build . -f ./postgis/Dockerfile --tag ${POSTGIS_IMAGE_ID}:${POSTGIS_LATEST_VERSION} --tag ${POSTGIS_IMAGE_ID}:$(word 1, $(subst -, ,$(POSTGIS_LATEST_VERSION))) --tag ${POSTGIS_IMAGE_ID}:latest --build-arg POSTGIS_VERSION=${POSTGIS_LATEST_VERSION} --platform linux/amd64 37 38push-postgis: build-postgis 39 @for version in $(POSTGIS_VERSIONS) ; do \ 40 ${DOCKER} push ${POSTGIS_IMAGE_ID}:$$version ; \ 41 ${DOCKER} push ${POSTGIS_IMAGE_ID}:$(word 1, $(subst -, ,$$version)); \ 42 done 43 ${DOCKER} push ${POSTGIS_IMAGE_ID}:${POSTGIS_LATEST_VERSION} 44 ${DOCKER} push ${POSTGIS_IMAGE_ID}:$(word 1, $(subst -, ,${POSTGIS_LATEST_VERSION})) 45 ${DOCKER} push ${POSTGIS_IMAGE_ID}:latest 46 47build: build-postgres build-postgis 48 49push: push-postgres push-postgis