koopa-admin-log/configs/lemmy/compose.yml
2026-08-17 15:04:19 +02:00

112 lines
3 KiB
YAML

# koopa-lemmy — Lemmy behind host Caddy on :9026
# Docs: https://join-lemmy.org/docs/administration/install_docker.html
# Images pinned from LemmyNet compose 0.19.20. No secrets in this file.
x-logging: &default-logging
driver: "json-file"
options:
max-size: "50m"
max-file: "4"
services:
proxy:
image: docker.io/library/nginx:1-alpine
container_name: koopa-lemmy-proxy
ports:
- "9026:8536"
volumes:
- ./nginx_internal.conf:/etc/nginx/nginx.conf:ro
- ./proxy_params:/etc/nginx/proxy_params:ro
restart: unless-stopped
logging: *default-logging
depends_on:
- pictrs
- lemmy-ui
labels:
org.hacktivism.service: lemmy
org.hacktivism.host_port: "9026"
org.hacktivism.site: lemmy.hacktivism.ch
org.hacktivism.managed_by: koopa-admin
lemmy:
image: docker.io/dessalines/lemmy:0.19.20
container_name: koopa-lemmy
hostname: lemmy
restart: unless-stopped
logging: *default-logging
environment:
- RUST_LOG=warn
volumes:
- ./lemmy.hjson:/config/config.hjson:ro
depends_on:
postgres:
condition: service_healthy
pictrs:
condition: service_started
labels:
org.hacktivism.service: lemmy
org.hacktivism.managed_by: koopa-admin
lemmy-ui:
image: docker.io/dessalines/lemmy-ui:0.19.20
container_name: koopa-lemmy-ui
environment:
- LEMMY_UI_LEMMY_INTERNAL_HOST=lemmy:8536
- LEMMY_UI_LEMMY_EXTERNAL_HOST=${LEMMY_HOSTNAME}
- LEMMY_UI_HTTPS=true
- LEMMY_UI_EXTRA_THEMES_FOLDER=/app/extra_themes
volumes:
- ./extra_themes:/app/extra_themes:ro
depends_on:
- lemmy
restart: unless-stopped
logging: *default-logging
labels:
org.hacktivism.service: lemmy
org.hacktivism.managed_by: koopa-admin
pictrs:
image: docker.io/asonix/pictrs:0.5.24
container_name: koopa-lemmy-pictrs
hostname: pictrs
environment:
- PICTRS__SERVER__API_KEY=${POSTGRES_PASSWORD}
- RUST_BACKTRACE=full
- PICTRS__MEDIA__VIDEO__VIDEO_CODEC=vp9
- PICTRS__MEDIA__ANIMATION__MAX_WIDTH=256
- PICTRS__MEDIA__ANIMATION__MAX_HEIGHT=256
- PICTRS__MEDIA__ANIMATION__MAX_FRAME_COUNT=400
user: "991:991"
volumes:
- lemmy-pictrs:/mnt
restart: unless-stopped
logging: *default-logging
labels:
org.hacktivism.service: lemmy
org.hacktivism.managed_by: koopa-admin
postgres:
image: docker.io/library/postgres:16-alpine
container_name: koopa-lemmy-db
hostname: postgres
environment:
- POSTGRES_USER=lemmy
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
- POSTGRES_DB=lemmy
volumes:
- lemmy-db:/var/lib/postgresql/data
restart: unless-stopped
logging: *default-logging
healthcheck:
test: ["CMD-SHELL", "pg_isready -U lemmy -d lemmy"]
interval: 5s
timeout: 5s
retries: 12
labels:
org.hacktivism.service: lemmy
org.hacktivism.managed_by: koopa-admin
volumes:
lemmy-db:
lemmy-pictrs: