managedb (948B) - Raw
1 #!/usr/bin/env bash 2 3 _psql() { 4 env \ 5 PGPASSWORD=osm \ 6 PGHOST=127.0.0.1 \ 7 PGUSER=osm \ 8 PGDATABASE=osm \ 9 psql "$@" 10 } 11 12 _wait_for_postgres() { 13 >&2 echo -n "Waiting for postgres" 14 for _ in $(seq 240); do 15 if _psql -qc '\q' 2>/dev/null; then 16 >&2 echo " up" 17 exit 0 18 fi 19 >&2 echo -n . 20 sleep 1 21 done 22 >&2 echo " down" 23 exit 1 24 } 25 26 name=postgis-contours 27 case ${1:-} in 28 start) 29 docker run -d --rm \ 30 -p 5432:5432 \ 31 -e POSTGRES_DBNAME=osm \ 32 -e POSTGRES_USER=osm \ 33 -e POSTGRES_PASSWORD=osm \ 34 --name "$name" \ 35 postgis/postgis:13-3.0-alpine 36 _wait_for_postgres 37 ;; 38 stop) 39 docker stop "$name" 40 ;; 41 "" | --) 42 [[ $# -gt 1 ]] && shift 43 _psql "$@" 44 ;; 45 *) 46 >&2 echo "Unknown command: '$*'" 47 exit 1 48 ;; 49 esac