36 lines
755 B
Bash
Executable file
36 lines
755 B
Bash
Executable file
#!/bin/sh
|
|
|
|
PODMAN_NAME="PostgreSQL"
|
|
PGSQL_IMAGE="docker.io/library/postgres"
|
|
|
|
: "${DB_HOST:=localhost}"
|
|
: "${DB_PORT:=5455}"
|
|
: "${DB_PASS:=1234}"
|
|
: "${DB_USER:=postgres}"
|
|
: "${DB_NAME:=local}"
|
|
|
|
if ! command -v podman >/dev/null 2>&1 ; then
|
|
echo "podman not found in PATH"
|
|
exit 1
|
|
fi
|
|
|
|
if command -v fuser >/dev/null 2>&1 ; then
|
|
if fuser "$DB_PORT"/tcp >/dev/null 2>&1 ; then
|
|
echo "Port already in use"
|
|
exit 1
|
|
fi
|
|
fi
|
|
|
|
if ! podman run \
|
|
--name "$PODMAN_NAME" \
|
|
-p "$DB_PORT":5432 \
|
|
-e POSTGRES_USER="$DB_USER" \
|
|
-e POSTGRES_PASSWORD="$DB_PASS" \
|
|
-e POSTGRES_DB="$DB_NAME" \
|
|
--replace \
|
|
-d \
|
|
"$PGSQL_IMAGE" 1>&- ; then
|
|
exit 1
|
|
fi
|
|
|
|
echo "postgresql://$DB_USER:$DB_PASS@$DB_HOST:$DB_PORT/$DB_NAME?sslmode=disable"
|