koopa-admin-log/configs/decidim/compose.yml

131 lines
4.1 KiB
YAML

# koopa-decidim — Decidim behind host Caddy on :9027
# Docs: https://docs.decidim.org/en/develop/install/
# Image: official pre-generated app (core modules only). No secrets in this file.
x-logging: &default-logging
driver: "json-file"
options:
max-size: "50m"
max-file: "4"
x-app-env: &app-env
RAILS_ENV: production
RAILS_SERVE_STATIC_FILES: "true"
RAILS_LOG_TO_STDOUT: "true"
DATABASE_URL: postgres://decidim:${POSTGRES_PASSWORD}@postgres:5432/decidim
REDIS_URL: redis://redis:6379/0
SECRET_KEY_BASE: ${SECRET_KEY_BASE}
DECIDIM_APPLICATION_NAME: ${DECIDIM_APPLICATION_NAME:-hacktivism}
DECIDIM_MAILER_SENDER: ${DECIDIM_MAILER_SENDER:-noreply@hacktivism.ch}
DECIDIM_AVAILABLE_LOCALES: ${DECIDIM_AVAILABLE_LOCALES:-en,de,fr}
DECIDIM_DEFAULT_LOCALE: ${DECIDIM_DEFAULT_LOCALE:-en}
SMTP_ADDRESS: ${SMTP_ADDRESS:-127.0.0.1}
SMTP_DOMAIN: ${SMTP_DOMAIN:-hacktivism.ch}
SMTP_USERNAME: ${SMTP_USERNAME:-unused}
SMTP_PASSWORD: ${SMTP_PASSWORD:-unused}
SMTP_PORT: ${SMTP_PORT:-25}
SMTP_AUTHENTICATION: ${SMTP_AUTHENTICATION:-plain}
QUEUE_ADAPTER: ${QUEUE_ADAPTER:-sidekiq}
services:
decidim:
image: docker.io/decidim/decidim:0.30.8
container_name: koopa-decidim
hostname: decidim
ports:
- "9027:3000"
env_file:
- .env
environment:
<<: *app-env
volumes:
- ./entrypoint.sh:/usr/local/bin/koopa-decidim-entrypoint.sh:ro
- ./theme/hacktivism.rb:/code/config/initializers/hacktivism.rb:ro
- ./theme/hacktivism.css:/code/public/hacktivism.css:ro
- ./bootstrap.rb:/code/lib/koopa_bootstrap.rb:ro
- ./assets/img/logo.svg:/code/public/hacktivism-logo.svg:ro
- ./assets/img/favicon.svg:/code/public/hacktivism-favicon.svg:ro
- decidim-storage:/code/storage
- decidim-uploads:/code/public/uploads
- decidim-tmp:/code/tmp
entrypoint: ["/bin/bash", "/usr/local/bin/koopa-decidim-entrypoint.sh"]
command: ["bundle", "exec", "rails", "s", "-b", "0.0.0.0", "-p", "3000"]
restart: unless-stopped
logging: *default-logging
depends_on:
postgres:
condition: service_healthy
redis:
condition: service_started
labels:
org.hacktivism.service: decidim
org.hacktivism.host_port: "9027"
org.hacktivism.site: decidim.hacktivism.ch
org.hacktivism.managed_by: koopa-admin
sidekiq:
image: docker.io/decidim/decidim:0.30.8
container_name: koopa-decidim-sidekiq
hostname: sidekiq
env_file:
- .env
environment:
<<: *app-env
volumes:
- ./entrypoint.sh:/usr/local/bin/koopa-decidim-entrypoint.sh:ro
- ./theme/hacktivism.rb:/code/config/initializers/hacktivism.rb:ro
- decidim-storage:/code/storage
- decidim-uploads:/code/public/uploads
- decidim-tmp:/code/tmp
entrypoint: ["/bin/bash", "/usr/local/bin/koopa-decidim-entrypoint.sh"]
command: ["bundle", "exec", "sidekiq", "-C", "config/sidekiq.yml"]
restart: unless-stopped
logging: *default-logging
depends_on:
postgres:
condition: service_healthy
redis:
condition: service_started
labels:
org.hacktivism.service: decidim
org.hacktivism.managed_by: koopa-admin
postgres:
image: docker.io/library/postgres:16-alpine
container_name: koopa-decidim-db
hostname: postgres
environment:
- POSTGRES_USER=decidim
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
- POSTGRES_DB=decidim
volumes:
- decidim-db:/var/lib/postgresql/data
restart: unless-stopped
logging: *default-logging
healthcheck:
test: ["CMD-SHELL", "pg_isready -U decidim -d decidim"]
interval: 5s
timeout: 5s
retries: 12
labels:
org.hacktivism.service: decidim
org.hacktivism.managed_by: koopa-admin
redis:
image: docker.io/library/redis:7-alpine
container_name: koopa-decidim-redis
hostname: redis
volumes:
- decidim-redis:/data
restart: unless-stopped
logging: *default-logging
labels:
org.hacktivism.service: decidim
org.hacktivism.managed_by: koopa-admin
volumes:
decidim-db:
decidim-redis:
decidim-storage:
decidim-uploads:
decidim-tmp: