Merge pull request #18 from codeagencybe/pgbouncer

Fabio | Feature | PgBouncer service
This commit is contained in:
Yhael S
2024-07-15 22:12:44 -06:00
committed by GitHub
5 changed files with 57 additions and 1 deletions

View File

@@ -15,13 +15,14 @@ DEV_MODE=
# Services
PROJECT_NAME=odoocker
SERVICES=odoo,nginx,proxy,postgres
SERVICES=odoo,nginx,proxy,postgres,pgbouncer
# Service configuration
USE_REDIS=false
USE_S3=false
USE_SENTRY=false
USE_PGADMIN=false
USE_PGBOUNCER=false
# GitHub user and access token to clone private repositories
GITHUB_USER=
@@ -46,6 +47,11 @@ UNACCENT=False
LIST_DB=True
DBFILTER=.*
# PgBouncer
POOL_MODE=transaction
MAX_CLIENT_CONN=500
ADMIN_USERS=postgres,dbuser,odoo
# Logging
LOG_LEVEL=info
# Additional logs
@@ -135,6 +141,7 @@ USE_REDIS=${USE_REDIS}
USE_S3=${USE_S3}
USE_SENTRY=${USE_SENTRY}
USE_PGADMIN=${USE_PGADMIN}
USE_PGBOUNCER=${USE_PGBOUNCER}
# Which services are going to be brought up
COMPOSE_PROFILES=${SERVICES}
@@ -149,10 +156,12 @@ ACME_COMPANION_PROFILES="acme"
KEYDB_PROFILES="keydb"
MINIO_PROFILES="minio"
PGADMIN_PROFILES="pgadmin"
PGBOUNCER_PROFILES="pgbouncer"
# Containers' Tags
ODOO_TAG=17.0
POSTGRES_TAG=16.1
PGBOUNCER_TAG=latest
KEYDB_TAG=latest
MINIO_TAG=latest
NGINX_TAG=1.25.3

View File

@@ -12,6 +12,11 @@ services:
ports:
- 5432:5432
pgbouncer:
restart: 'no'
ports:
- 5432:5432
nginx:
restart: 'no'

View File

@@ -12,6 +12,11 @@ services:
ports:
- 127.0.0.1:5432:5432
pgbouncer:
restart: unless-stopped
ports:
- 127.0.0.1=5432:5432
nginx:
restart: unless-stopped

View File

@@ -83,6 +83,23 @@ services:
- internal
profiles: [$POSTGRES_PROFILES]
pgbouncer:
image: edoburu/pgbouncer:latest
container_name: pgbouncer
restart: always
depends_on:
- db
#ports:
# - "5432:5432"
environment:
- DB_HOST=db
- DB_USER=odoo
- DB_PASSWORD=odoo
- MAX_CLIENT_CONN=500
- POOL_MODE=transaction
- ADMIN_USERS=postgres,dbuser,odoo
profiles: [$PGBOUNCER_PROFILES]
nginx:
container_name: nginx
image: nginx:${NGINX_TAG}

View File

@@ -0,0 +1,20 @@
#!/bin/bash
set -e
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL
CREATE USER dbuser WITH ENCRYPTED PASSWORD 'dbuser';
CREATE DATABASE dbuser OWNER dbuser;
CREATE USER user1 WITH ENCRYPTED PASSWORD 'user1';
CREATE DATABASE user1 OWNER user1;
CREATE USER user2 WITH ENCRYPTED PASSWORD 'user2';
CREATE DATABASE user2 OWNER user2;
CREATE USER user3 WITH ENCRYPTED PASSWORD 'user3';
CREATE DATABASE user3 OWNER user3;
CREATE USER odoo WITH ENCRYPTED PASSWORD 'odoo';
CREATE DATABASE odoo OWNER odoo;
EOSQL