From e5abfdad217b876ca1b46029a7545631c4b76836 Mon Sep 17 00:00:00 2001 From: Jim Dew Date: Wed, 24 Sep 2025 13:29:54 -0400 Subject: [PATCH] [skip ci] Add postgresql compose file (#180) * Add compose file specifically for postgresql. Remove postgresql lines from regular compose file. * remove unneeded network, switch postgresql image, remove hard set container_names --- docker-compose-postgresql.yml | 66 +++++++++++++++++++++++++++++++++++ docker-compose.yml | 18 ---------- 2 files changed, 66 insertions(+), 18 deletions(-) create mode 100644 docker-compose-postgresql.yml diff --git a/docker-compose-postgresql.yml b/docker-compose-postgresql.yml new file mode 100644 index 0000000..2bc86b6 --- /dev/null +++ b/docker-compose-postgresql.yml @@ -0,0 +1,66 @@ +--- +services: + suwayomi: + image: ghcr.io/suwayomi/suwayomi-server:preview + # user: 1000:1000 + environment: + - TZ=${TZ:-Etc/UTC} # Add a TZ variable to .env to change it + - DATABASE_TYPE=POSTGRESQL + - DATABASE_URL=postgresql://postgresql:5432/${POSTGRES_DB} + - DATABASE_USERNAME=${POSTGRES_USER} + - DATABASE_PASSWORD=${POSTGRES_PASSWORD} + # Comment these out if you do not use the flaresolverr container at the bottom of this file + - FLARESOLVERR_ENABLED=true + - FLARESOLVERR_URL=http://flaresolverr:8191 +# ################################################################################################# +# +# !!! IMPORTANT !!! +# - server settings can be changed during runtime in the WebUI +# - providing an environment variable will OVERWRITE the current setting value when starting the container +# +# ################################################################################################# +# +# example for setting env vars: +# +# - BIND_IP=0.0.0.0 +# - BIND_PORT=4567 +# - SOCKS_PROXY_ENABLED=false +# - DOWNLOAD_AS_CBZ=true +# - AUTH_MODE=basic_auth +# - AUTH_USERNAME=manga +# - AUTH_PASSWORD=hello123 +# - EXTENSION_REPOS=["http://github.com/orginazation-name/repo-name", "http://github.com/orginazation-name-2/repo-name-2"] + depends_on: + postgresql: + condition: service_healthy + restart: true + volumes: + - ./data:/home/suwayomi/.local/share/Tachidesk + ports: + - "4567:4567" + restart: on-failure:3 + + postgresql: + image: postgres:17.6 + environment: + - POSTGRES_USER=${POSTGRES_USER} + - POSTGRES_PASSWORD=${POSTGRES_PASSWORD} + - PGDATA=/data/postgres + - POSTGRES_DB=${POSTGRES_DB} + - TZ=${TZ:-Etc/UTC} + - PGTZ=${TZ:-Etc/UTC} + volumes: + - ./postgres:/data/postgres + restart: unless-stopped + healthcheck: + test: ["CMD-SHELL", "pg_isready -d ${POSTGRES_DB} -U ${POSTGRES_USER}"] + interval: 10s + timeout: 5s + retries: 5 + start_period: 30s + + flaresolverr: + image: ghcr.io/thephaseless/byparr:latest + environment: + - TZ=${TZ:-Etc/UTC} + restart: unless-stopped diff --git a/docker-compose.yml b/docker-compose.yml index 6a735a7..a5ca1c2 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -26,30 +26,12 @@ services: # - AUTH_USERNAME=manga # - AUTH_PASSWORD=hello123 # - EXTENSION_REPOS=["http://github.com/orginazation-name/repo-name", "http://github.com/orginazation-name-2/repo-name-2"] - -# example env vars for using postgreSQL database: -# - DATABASE_TYPE=POSTGRESQL -# - DATABASE_URL=postgresql://postgresql:5432/${POSTGRES_DB} -# - DATABASE_USERNAME=${POSTGRES_USER} -# - DATABASE_PASSWORD=${POSTGRES_PASSWORD} volumes: - ./data:/home/suwayomi/.local/share/Tachidesk ports: - "4567:4567" restart: on-failure:3 -# example postgreSQL database service: -# postgresql: -# container_name: postgresql -# image: postgres:17.6-alpine -# environment: -# POSTGRES_USER: ${POSTGRES_USER} -# POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} -# PGDATA: /data/postgres -# POSTGRES_DB: ${POSTGRES_DB} -# volumes: -# - ./postgres:/data/postgres -# restart: unless-stopped flaresolverr: image: ghcr.io/thephaseless/byparr:latest container_name: flaresolverr