Here are some docker compose templates for popular applications that works well with PostgreSQL
- Supabase : The open source Firebase alternative, built on Postgres
- FerretDB : Open Source MongoDB alternative, built on Postgres
- PolarDB : Open Source RAC alternative, built on Postgres
- PgAdmin4 : Postgres Admin Tools
- PgWeb : Postgres Web Console
- ByteBase : Postgres DDL Migration
- PostgREST : Auto-Generated PG Backend REST API
- Kong : Kong API Gateway
- Gitea : Self-Hosting Git Services
- Wiki : Local Wiki Service
- NocoDB : Open source airtable alternative
- Odoo : Open Source ERP
- Dify : Open Source AI Workflow Platform for GenAI Apps.
- Metabase : Fast analytics with the friendly UX and integrated tooling
- Jupyter : Run jupyter notebook, the data analysis IDE with docker
- etc....
Docker
You can install docker with the docker.yml
playbook.
If you wish to use a mirror, add them to docker_registry_mirrors
. To use another registry:
docker login quay.io
Portals
There are several predefined portals
postgrest : { domain: api.pigsty ,endpoint: "127.0.0.1:8884" }
pgadmin : { domain: adm.pigsty ,endpoint: "127.0.0.1:8885" }
pgweb : { domain: cli.pigsty ,endpoint: "127.0.0.1:8886" }
bytebase : { domain: ddl.pigsty ,endpoint: "127.0.0.1:8887" }
jupyter : { domain: lab.pigsty ,endpoint: "127.0.0.1:8888" ,websocket: true }
gitea : { domain: git.pigsty ,endpoint: "127.0.0.1:8889" }
minio : { domain: sss.pigsty ,endpoint: "127.0.0.1:9000" }
wiki : { domain: wiki.pigsty ,endpoint: "127.0.0.1:9002" }
noco : { domain: noco.pigsty ,endpoint: "127.0.0.1:9003" }
odoo : { domain: odoo.pigsty ,endpoint: "127.0.0.1:8069" ,websocket: true }
supa : { domain: supa.pigsty ,endpoint: "127.0.0.1:8000" ,websocket: true }
dify : { domain: dify.pigsty ,endpoint: "127.0.0.1:8001" ,websocket: true }
Pull Image
docker pull dpage/pgadmin4
docker pull sosedoff/pgweb
docker pull vonng/pg_exporter
docker pull postgrest/postgrest
docker pull bytebase/bytebase
docker pull jupyter/minimal-notebook
#docker pull jupyter/scipy-notebook:latest
docker pull alpine
docker pull registry
docker pull andrewjones/schemaspy-postgres
docker pull requarks/wiki
docker pull gitea/gitea
docker pull kong
docker pull odoo
docker pull quay.io/ferretdb/ferretdb
Make Cache
mkdir -p /tmp/docker
docker save dpage/pgadmin4 | gzip -9 -c > /tmp/docker/pgadmin4.tgz
docker save sosedoff/pgweb | gzip -9 -c > /tmp/docker/pgweb.tgz
docker save vonng/pg_exporter | gzip -9 -c > /tmp/docker/pg_exporter.tgz
docker save postgrest/postgrest | gzip -9 -c > /tmp/docker/postgrest.tgz
docker save bytebase/bytebase | gzip -9 -c > /tmp/docker/bytebase.tgz
docker save jupyter/minimal-notebook | gzip -9 -c > /tmp/docker/jupyter.tgz
docker save alpine | gzip -9 -c > /tmp/docker/alpine.tgz
docker save registry | gzip -9 -c > /tmp/docker/registry.tgz
docker save andrewjones/schemaspy-postgres | gzip -9 -c > /tmp/docker/schemaspy.tgz
docker save requarks/wiki | gzip -9 -c > /tmp/docker/wiki.tgz
docker save gitea/gitea | gzip -9 -c > /tmp/docker/gitea.tgz
docker save kong | gzip -9 -c > /tmp/docker/kong.tgz
docker save odoo | gzip -9 -c > /tmp/docker/odoo.tgz
docker save quay.io/ferretdb/ferretdb | gzip -9 -c > /tmp/docker/ferretdb.tgz
docker save nocodb/nocodb | gzip -9 -c > /tmp/docker/nocodb.tgz
Load Cache
cat /tmp/docker/pg_exporter.tgz | gzip -d -c - | docker load;
cat /tmp/docker/postgrest.tgz | gzip -d -c - | docker load;
cat /tmp/docker/pgweb.tgz | gzip -d -c - | docker load;
cat /tmp/docker/pgadmin4.tgz | gzip -d -c - | docker load;
cat /tmp/docker/bytebase.tgz | gzip -d -c - | docker load;
cat /tmp/docker/jupyter.tgz | gzip -d -c - | docker load;
cat /tmp/docker/wiki.tgz | gzip -d -c - | docker load;
cat /tmp/docker/gitea.tgz | gzip -d -c - | docker load;
cat /tmp/docker/kong.tgz | gzip -d -c - | docker load;
cat /tmp/docker/odoo.tgz | gzip -d -c - | docker load;
cat /tmp/docker/alpine.tgz | gzip -d -c - | docker load;
cat /tmp/docker/registry.tgz | gzip -d -c - | docker load;
cat /tmp/docker/schemaspy.tgz | gzip -d -c - | docker load;
cat /tmp/docker/nocodb.tgz | gzip -d -c - | docker load;
There are lots of software using PostgreSQL / Redis.
- KeyCloak : SSO Solution
- Gitlab : Code Management
- Jira : Project Management
- Confluence: Document Management
- Harbour : Image Management
- JupyterLab : Data Analysis
- Grafana : Data Visualization
- Mastodon : Social Network
- Discourse : Community
docker pull quay.io/keycloak/keycloak:18.0.0 # 18.0.0 # 562MB
docker pull tootsuite/mastodon # latest # 1.76GB
docker pull cptactionhank/atlassian-confluence:7.7.3 # 7.7.3 # 835MB
docker pull cptactionhank/atlassian-jira-software:8.1.0 # 8.1.0 # 531MB
docker pull jupyter/scipy-notebook # latest # 3.01GB
docker pull gitlab/gitlab-ee # latest # 2.69GB
docker pull grafana/grafana-oss # latest # 286MB
Make Cache for Software
docker save quay.io/keycloak/keycloak tootsuite/mastodon cptactionhank/atlassian-confluence cptactionhank/atlassian-jira-software jupyter/scipy-notebook gitlab/gitlab-ee grafana/grafana-oss | gzip -c - > docker.tgz
cat /tmp/docker.tgz | gzip -d -c - | docker load
Check pigsty-app for details.
Pigsty has one embed visualization app: pglog which is used for pg csv log analysis.
There's another visualization app works on pigsty: ISD : noaa weather data visualization: github.com/Vonng/isd, Demo