112 lines
3 KiB
YAML
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:
|
|
|