init commit

This commit is contained in:
mk
2026-02-15 00:47:12 -03:00
commit 0951f21e8e
21 changed files with 408 additions and 0 deletions

26
mastodon/.env.example Normal file
View File

@@ -0,0 +1,26 @@
PUID=1000
PGID=1001
TZ=America/Sao_Paulo
# Domain
LOCAL_DOMAIN=yourdomainhere
WEB_DOMAIN=yourdomainhere
# Database
DB_PASS=changeme
# Secrets (generate these - do not leave empty)
ACTIVE_RECORD_ENCRYPTION_PRIMARY_KEY=
ACTIVE_RECORD_ENCRYPTION_DETERMINISTIC_KEY=
ACTIVE_RECORD_ENCRYPTION_KEY_DERIVATION_SALT=
SECRET_KEY_BASE=
OTP_SECRET=
VAPID_PRIVATE_KEY=
VAPID_PUBLIC_KEY=
# SMTP
SMTP_SERVER=mail.example.com
SMTP_PORT=25
SMTP_LOGIN=
SMTP_PASSWORD=
SMTP_FROM_ADDRESS=notifications@yourdomainhere

View File

@@ -0,0 +1,73 @@
---
services:
mastodon:
depends_on:
- redis
- db
image: lscr.io/linuxserver/mastodon:latest
container_name: mastodon
environment:
- PUID=${PUID}
- PGID=${PGID}
- TZ=${TZ}
- LOCAL_DOMAIN=${LOCAL_DOMAIN}
- REDIS_HOST=redis
- REDIS_PORT=6379
- DB_HOST=db
- DB_USER=mastodon
- DB_NAME=mastodon
- DB_PASS=${DB_PASS}
- DB_PORT=5432
- ES_ENABLED=false
- ACTIVE_RECORD_ENCRYPTION_PRIMARY_KEY=${ACTIVE_RECORD_ENCRYPTION_PRIMARY_KEY}
- ACTIVE_RECORD_ENCRYPTION_DETERMINISTIC_KEY=${ACTIVE_RECORD_ENCRYPTION_DETERMINISTIC_KEY}
- ACTIVE_RECORD_ENCRYPTION_KEY_DERIVATION_SALT=${ACTIVE_RECORD_ENCRYPTION_KEY_DERIVATION_SALT}
- SECRET_KEY_BASE=${SECRET_KEY_BASE}
- OTP_SECRET=${OTP_SECRET}
- VAPID_PRIVATE_KEY=${VAPID_PRIVATE_KEY}
- VAPID_PUBLIC_KEY=${VAPID_PUBLIC_KEY}
- SMTP_SERVER=${SMTP_SERVER}
- SMTP_PORT=${SMTP_PORT}
- SMTP_LOGIN=${SMTP_LOGIN}
- SMTP_PASSWORD=${SMTP_PASSWORD}
- SMTP_FROM_ADDRESS=${SMTP_FROM_ADDRESS}
- S3_ENABLED=false
- WEB_DOMAIN=${WEB_DOMAIN}
- ES_HOST=es #optional
- ES_PORT=9200 #optional
- ES_USER=elastic #optional
- ES_PASS=elastic #optional
- S3_BUCKET= #optional
- AWS_ACCESS_KEY_ID= #optional
- AWS_SECRET_ACCESS_KEY= #optional
- S3_ALIAS_HOST= #optional
- SIDEKIQ_ONLY=false #optional
- SIDEKIQ_QUEUE= #optional
- SIDEKIQ_DEFAULT=false #optional
- SIDEKIQ_THREADS=5 #optional
- DB_POOL=5 #optional
- NO_CHOWN= #optional
- MASTODON_PROMETHEUS_EXPORTER_ENABLED= #optional
volumes:
- ./config:/config
ports:
- 88:80
- 448:443
- 9394:9394 #optional
restart: unless-stopped
redis:
image: redis:7-alpine
container_name: mastodon-redis
restart: unless-stopped
db:
image: postgres:14-alpine
container_name: mastodon-db
environment:
POSTGRES_DB: mastodon
POSTGRES_USER: mastodon
POSTGRES_PASSWORD: ${DB_PASS}
volumes:
- ./db:/var/lib/postgresql/data
restart: unless-stopped