entrypoint not working

This commit is contained in:
knoflook 2022-09-27 15:00:08 +02:00
parent 264f7e6f21
commit 9385e45c8e
Signed by: knoflook
GPG Key ID: D6A1D0E8FC4FEF1C
3 changed files with 41 additions and 11 deletions

View File

@ -1 +1,2 @@
export NGINX_CONFIG_VERSION=v1
export POSTGRES_ENTRYPOINT_VERSION=v1

View File

@ -37,7 +37,7 @@ services:
networks:
- internal
depends_on:
- postgres
- db
- redis
volumes:
- "shiv_data:/root/.shiv"
@ -90,7 +90,7 @@ services:
- LISTEN_HOST=0.0.0.0
- LISTEN_SERVER=uvicorn
- SECRET_KEY=foobar
- DATABASE_HOST=postgres
- DATABASE_HOST=db
- DATABASE_PORT=5432
- DATABASE_NAME=karrot
- DATABASE_USER=karrot
@ -116,13 +116,18 @@ services:
networks:
- internal
postgres:
db:
image: "postgres:14-alpine"
healthcheck:
test: ["CMD-SHELL", "pg_isready -U karrot"]
interval: 1s
timeout: 3s
retries: 30
configs:
- source: postgres_entrypoint
target: /coopcloud-entrypoint.sh
mode: 0555
entrypoint: /coopcloud-entrypoint.sh
volumes:
- "postgres_data:/var/lib/postgresql/data"
networks:
@ -131,7 +136,22 @@ services:
- POSTGRES_PASSWORD=karrot
- POSTGRES_USER=karrot
- POSTGRES_DB=karrot
secrets:
db_password:
external: true
name: ${STACK_NAME}_db_password_${SECRET_DB_PASSWORD_VERSION}
configs:
nginx_config:
name: ${STACK_NAME}_nginx_config_${NGINX_CONFIG_VERSION}
file: nginx.conf.tmpl
template_driver: golang
postgres_entrypoint:
name: ${STACK_NAME}_postgres_entrypoint_${POSTGRES_ENTRYPOINT_VERSION}
file: pg_entrypoint.sh
volumes:
shiv_data:
geoip_data:
@ -142,10 +162,3 @@ networks:
proxy:
external: true
internal:
configs:
nginx_config:
name: ${STACK_NAME}_nginx_config_${NGINX_CONFIG_VERSION}
file: nginx.conf.tmpl
template_driver: golang

16
pg_entrypoint.sh Normal file
View File

@ -0,0 +1,16 @@
#!/bin/sh
# This is based on https://github.com/postgis/docker-postgis/blob/4eb614133d6aa87bfc5c952d24b7eb1f499e5c7c/12-3.0/initdb-postgis.sh
set -e
# Perform all actions as $POSTGRES_USER
export PGUSER="$POSTGRES_USER"
for DB in template1 "$POSTGRES_DB"; do
echo "Loading extensions into $DB"
"${psql[@]}" --dbname="$DB" <<-'EOSQL'
CREATE EXTENSION IF NOT EXISTS citext;
CREATE EXTENSION IF NOT EXISTS btree_gist;
EOSQL
done
/docker-entrypoint.sh "$@"