Skip to content

Instantly share code, notes, and snippets.

@jkatz
Last active September 9, 2023 03:00
Show Gist options
  • Star 21 You must be signed in to star a gist
  • Fork 13 You must be signed in to fork a gist
  • Save jkatz/98dc5d614fbbfbd2b80b65a7f4561996 to your computer and use it in GitHub Desktop.
Save jkatz/98dc5d614fbbfbd2b80b65a7f4561996 to your computer and use it in GitHub Desktop.
Install PostgreSQL 10 & pgAdmin 4 with Docker
#!/bin/bash
mkdir postgres
cd postgres
docker volume create --driver local --name=pgvolume
docker volume create --driver local --name=pga4volume
docker network create --driver bridge pgnetwork
cat << EOF > pg-env.list
PG_MODE=primary
PG_PRIMARY_USER=postgres
PG_PRIMARY_PASSWORD=yoursecurepassword
PG_DATABASE=testdb
PG_USER=yourusername
PG_PASSWORD=yoursecurepassword
PG_ROOT_PASSWORD=yoursecurepassword
PG_PRIMARY_PORT=5432
EOF
cat << EOF > pgadmin-env.list
PGADMIN_SETUP_EMAIL=youremail@yourdomain.com
PGADMIN_SETUP_PASSWORD=yoursecurepassword
SERVER_PORT=5050
EOF
docker run --publish 5432:5432 \
--volume=pgvolume:/pgdata \
--env-file=pg-env.list \
--name="postgres" \
--hostname="postgres" \
--network="pgnetwork" \
--detach \
crunchydata/crunchy-postgres:centos7-10.9-2.4.1
docker run --publish 5050:5050 \
--volume=pga4volume:/var/lib/pgadmin \
--env-file=pgadmin-env.list \
--name="pgadmin4" \
--hostname="pgadmin4" \
--network="pgnetwork" \
--detach \
crunchydata/crunchy-pgadmin4:centos7-10.9-2.4.1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment