docker/gotosocial/docker-compose.yml

57 lines
1.8 KiB
YAML

services:
traefik:
image: "traefik:v3.3"
container_name: "traefik"
restart: always
command:
- "--api.insecure=false"
- "--providers.docker=true"
- "--providers.docker.exposedbydefault=false"
- "--entryPoints.web.address=:80"
- "--entryPoints.websecure.address=:443"
- "--certificatesresolvers.myresolver.acme.httpchallenge=true"
- "--certificatesresolvers.myresolver.acme.httpchallenge.entrypoint=web"
- "--certificatesresolvers.myresolver.acme.email=norbert@tretkowski.de"
- "--certificatesresolvers.myresolver.acme.storage=/letsencrypt/acme.json"
ports:
- "80:80"
- "443:443"
volumes:
- "./traefik/letsencrypt:/letsencrypt"
- "/var/run/docker.sock:/var/run/docker.sock:ro"
networks:
- gotosocial
gotosocial:
image: superseriousbusiness/gotosocial:latest
container_name: gotosocial
user: 1000:1000
restart: always
networks:
- gotosocial
environment:
GTS_HOST: social.tretkowski.de
GTS_DB_TYPE: sqlite
GTS_DB_ADDRESS: /gotosocial/storage/sqlite.db
GTS_LETSENCRYPT_ENABLED: "false"
GTS_WAZERO_COMPILATION_CACHE: /gotosocial/.cache
GTS_ADVANCED_RATE_LIMIT_REQUESTS: "0"
TZ: Europe/Berlin
ports:
- "127.0.0.1:8080:8080"
volumes:
- "./gotosocial/data:/gotosocial/storage"
- "./gotosocial/cache:/gotosocial/.cache"
labels:
- "traefik.enable=true"
- "traefik.http.routers.gotosocial.rule=Host(`social.tretkowski.de`)"
- "traefik.http.routers.gotosocial.entrypoints=websecure"
- "traefik.http.routers.gotosocial.tls.certresolver=myresolver"
networks:
gotosocial:
ipam:
driver: default
config:
- subnet: "172.18.1.0/24"
gateway: "172.18.1.1"