Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: update supabase-postgres #993

Merged
merged 1 commit into from
Oct 7, 2023
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
81 changes: 65 additions & 16 deletions public/v4/apps/supabase-postgres.yml
Original file line number Diff line number Diff line change
@@ -1,49 +1,98 @@
captainVersion: 4
services:
$$cap_appname-db:
image: supabase/postgres:$$cap_app_version
image: bitnami/supabase-postgres:$$cap_app_version
volumes:
- $$cap_appname-db-data:/var/lib/postgresql/data
restart: always
environment:
POSTGRES_USER: $$cap_pg_user
POSTGRES_PASSWORD: $$cap_pg_pass
POSTGRES_DB: $$cap_pg_db
POSTGRES_PASSWORD: $$cap_pg_pass
POSTGRES_PORT_NUMBER: $$cap_pg_port
POSTGRES_INITDB_ARGS: $$cap_pg_initdb_args
POSTGRES_REPLICATION_USER: $$cap_pg_repl_user
POSTGRES_REPLICATION_MODE: $$cap_pg_repl_mode
POSTGRES_REPLICATION_PASSWORD: $$cap_pg_repl_pass
POSTGRES_MASTER_HOST: $$cap_pg_master_host
POSTGRES_MASTER_PORT_NUMBER: $$cap_pg_master_port
POSTGRES_NUM_SYNCHRONOUS_REPLICAS: $$cap_pg_num_sync_repl
POSTGRES_SYNCHRONOUS_COMMIT_MODE: $$cap_pg_sync_commit_mode
caproverExtra:
notExposeAsWebApp: 'true'
caproverOneClickApp:
variables:
- id: $$cap_app_version
label: Supabase Version
defaultValue: '0.14.0'
description: Check out their Docker page for the valid tags https://hub.docker.com/r/supabase/postgres/tags
label: Postgres Version
defaultValue: '15.1.0'
description: Check out their Docker page for the valid tags https://hub.docker.com/r/bitnami/supabase-postgres/tags
validRegex: /^([^\s^\/])+$/

- id: $$cap_pg_user
label: Postgres Username
description: ''
validRegex: /.{1,}/
- id: $$cap_pg_pass
label: Postgres Password
description: ''
defaultValue: 'postgres'
validRegex: /.{1,}/

- id: $$cap_pg_db
label: Postgres Default Database
description: ''
defaultValue: 'postgres'
validRegex: /.{1,}/

- id: $$cap_pg_pass
label: Postgres Password
defaultValue: $$cap_gen_random_hex(32)
validRegex: /.{1,}/

- id: $$cap_pg_port
label: Postgres Port
defaultValue: '5432'
validRegex: /\d+/

- id: $$cap_pg_initdb_args
label: "OPTIONAL: Arguments for 'postgres initdb'"
description: For example, --data-checksums
validRegex: /.{0,}/

- id: $$cap_pg_repl_user
label: Postgres Replication User
description: 'The replication user created on the master on first run. No defaults.'

- id: $$cap_pg_repl_mode
label: Postgres Replication Mode
description: 'Replication mode. Possible values `master` or `slave`. No defaults.'
validRegex: /^(master|slave|)$/

- id: $$cap_pg_repl_pass
label: Postgres Replication Password
description: 'The replication users password. No defaults.'

- id: $$cap_pg_master_host
label: Postgres Master Host
description: 'Hostname/IP of replication master (slave parameter). No defaults.'

- id: $$cap_pg_master_port
label: Postgres Master Port
description: 'Server port of the replication master (slave parameter). Defaults to 5432.'

- id: $$cap_pg_num_sync_repl
label: Postgres number of synchronous replica
description: 'Number of replicas that will enable synchronous replication'

- id: $$cap_pg_sync_commit_mode
label: Postgres Replication Commit Mode
description: 'Type of synchronous commit. The available options are: `on`, `remote_apply`, `remote_write`, `local` and `off`. The default value is on.'
defaultValue: 'on'
validRegex: /^(on|remote_apply|remote_write|local|off|)$/

instructions:
start: >-
Postgres + goodies = Supabase Postgres
Unmodified Postgres with some useful plugins.

Unmodified Postgres with some useful plugins.

Our goal with this repo is not to modify Postgres, but to provide some of the most common extensions with a one-click install.
Why use it over the official postgres image?
It is an unmodified Postgres image with convenient plugins added.
It's optimized for replication, and provides popular extensions like PostGIS, pgRouting, pgTAP, and more for enhanced functionality. Ideal for those who prefer an unaltered Postgres experience with added features.
end: "Supabase (Postgres) is deployed and available as srv-captain--$$cap_appname-db:5432 to other apps. For example with NodeJS: 'const client = new Client({ user: 'cap_pg_user', host: 'srv-captain--$$cap_appname', database: 'cap_pg_db', password: '********', port: 5432})'"
displayName: Supabase PostgreSQL
isOfficial: true
description: Supabase makes it easy to use Postgres.
documentation: Taken from https://github.com/supabase/postgres
documentation: Taken from https://hub.docker.com/r/bitnami/supabase-postgres