Switch from Mastodon to Misskey

This commit is contained in:
Marko Korhonen 2022-12-18 16:47:20 +02:00
parent f7f82b701b
commit 4c2cd632af
2 changed files with 39 additions and 98 deletions

View file

@ -1,98 +0,0 @@
[services.mastodon]
image = "lscr.io/linuxserver/mastodon:latest"
container_name = "mastodon"
restart = "unless-stopped"
env_file = ".env"
environment = [
"PUID=1000",
"PGID=985",
"TZ=Europe/Helsinki",
"LOCAL_DOMAIN=korhonen.cc",
"WEB_DOMAIN=social.korhonen.cc",
"REDIS_HOST=redis",
"REDIS_PORT=6379",
"DB_HOST=postgres",
"DB_PORT=5432",
"DB_NAME=mastodon",
"DB_USER=mastodon",
"DB_PASS",
"VAPID_PRIVATE_KEY",
"VAPID_PUBLIC_KEY",
"SECRET_KEY_BASE",
"OTP_SECRET",
"SMTP_SERVER=smtp.migadu.com",
"SMTP_PORT=465",
"SMTP_TLS=true",
"SMTP_ENABLE_STARTTLS_AUTO=false",
"SMTP_AUTH_METHOD=plain",
"SMTP_LOGIN",
"SMTP_PASSWORD",
"SMTP_FROM_ADDRESS=social@korhonen.cc",
"S3_ENABLED=false",
"ES_ENABLED=false",
"ES_HOST=elasticsearch",
"ES_PORT=9200",
"ES_USER=elastic",
"ES_PASS=changeme",
"OIDC_ENABLED=true",
"OMNIAUTH_ONLY=true",
"OIDC_DISPLAY_NAME=Korhonen SSO",
"OIDC_DISCOVERY=true",
"OIDC_AUTH_ENDPOINT=https://sso.korhonen.cc/application/o/mastodon/.well-known/openid-configuration",
"OIDC_ISSUER=https://sso.korhonen.cc/application/o/mastodon/",
"OIDC_SCOPE=openid,profile,email",
"OIDC_UID_FIELD=preferred_username",
"OIDC_CLIENT_ID",
"OIDC_CLIENT_SECRET",
"OIDC_REDIRECT_URI=https://social.korhonen.cc/auth/auth/openid_connect/callback",
"OIDC_SECURITY_ASSUME_EMAIL_IS_VERIFIED=true",
]
networks = ["mastodon", "proxy", "postgres"]
volumes = ["/docker/mastodon:/config"]
labels = [
"traefik.enable=true",
"traefik.docker.network=proxy",
"traefik.http.routers.mastodon-redirect.entrypoints=http",
"traefik.http.routers.mastodon-redirect.rule=Host(`social.korhonen.cc`)",
"traefik.http.routers.mastodon-redirect.middlewares=http2https@file",
"traefik.http.routers.mastodon.entrypoints=https",
"traefik.http.routers.mastodon.middlewares=secHeaders@file,compress@file",
"traefik.http.routers.mastodon.rule=Host(`social.korhonen.cc`)",
"traefik.http.routers.mastodon.service=mastodon",
"traefik.http.services.mastodon.loadbalancer.server.port=443",
"traefik.http.services.mastodon.loadbalancer.server.scheme=https",
"traefik.http.services.mastodon.loadbalancer.serverstransport=ignorecert@file",
]
[services.elasticsearch]
image = "docker.elastic.co/elasticsearch/elasticsearch:8.5.3"
container_name = "mastodon-elasticsearch"
restart = "unless-stopped"
volumes = ["/docker/mastodon/elasticsearch:/usr/share/elasticsearch/data"]
networks = ["mastodon"]
environment = [
"cluster.name=mastodon-es-cluster",
"node.name=mastodon-node",
"discovery.type=single-node",
"bootstrap.memory_lock=true",
"ES_JAVA_OPTS=-Xms200m -Xmx200m",
]
[services.elasticsearch.ulimits.memlock]
soft = -1
hard = -1
[services.redis]
image = "redis:alpine"
container_name = "mastodon-redis"
networks = ["mastodon"]
restart = "unless-stopped"
[networks.mastodon]
external = false
[networks.proxy]
external = true
[networks.postgres]
external = true

View file

@ -0,0 +1,39 @@
[services.misskey]
image = "misskey/misskey"
container_name = "misskey"
restart = "unless-stopped"
depends_on = ["redis"]
ports = ["3082:3000"]
networks = ["misskey", "proxy", "postgres"]
volumes = [
"/docker/misskey/files:/misskey/files",
"/docker/misskey/config:/misskey/.config:ro",
]
labels = [
"traefik.enable=true",
"traefik.docker.network=proxy",
"traefik.http.routers.misskey-redirect.entrypoints=http",
"traefik.http.routers.misskey-redirect.rule=Host(`social.korhonen.cc`)",
"traefik.http.routers.misskey-redirect.middlewares=http2https@file",
"traefik.http.routers.misskey.entrypoints=https",
"traefik.http.routers.misskey.middlewares=secHeaders@file,compress@file",
"traefik.http.routers.misskey.rule=Host(`social.korhonen.cc`)",
"traefik.http.routers.misskey.service=misskey",
"traefik.http.services.misskey.loadbalancer.server.port=3000",
]
[services.redis]
image = "redis"
container_name = "misskey-redis"
restart = "unless-stopped"
networks = ["misskey"]
volumes = ["/docker/misskey/redis:/data"]
[networks.misskey]
internal = true
[networks.proxy]
external = true
[networks.postgres]
external = true