massive update i don't feel like noting what changed
This commit is contained in:
parent
0d93587aef
commit
fe7ede16c8
27 changed files with 255 additions and 118 deletions
|
|
@ -1,57 +0,0 @@
|
|||
# ╭──────────────────────────────────────────────────────────╮
|
||||
# │ _ _ │
|
||||
# │ _ __ | |__ ___ ___ _ __ | |__ ___ _ __ _ _ ___ │
|
||||
# │ | '_ \| '_ \ / _ \/ __| '_ \| '_ \ / _ \| '__| | | / __| │
|
||||
# │ | |_) | | | | (_) \__ \ |_) | | | | (_) | | | |_| \__ \ │
|
||||
# │ | .__/|_| |_|\___/|___/ .__/|_| |_|\___/|_| \__,_|___/ │
|
||||
# │ |_| |_| │
|
||||
# ╰──────────────────────────────────────────────────────────╯
|
||||
# caddy configurations for phosphorus
|
||||
|
||||
# =============================================================================
|
||||
|
||||
# ╭────────────────────────────────╮
|
||||
# │ commonly reused rules/snippets │
|
||||
# ╰────────────────────────────────╯
|
||||
|
||||
# common settings - globally enables settings that are commonly used in every snippet
|
||||
(common-settings) {
|
||||
encode zstd gzip
|
||||
}
|
||||
|
||||
# log - reused log settings
|
||||
(log) {
|
||||
log {
|
||||
output file /var/log/caddy/{args[0]} {
|
||||
roll_size 10MB
|
||||
roll_keep 1
|
||||
roll_keep_for 120h # 3 days
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# robots-txt - link /robots.txt to the same file
|
||||
(robots-txt) {
|
||||
handle_path /robots.txt {
|
||||
root * /var/www/robots.txt
|
||||
file_server
|
||||
}
|
||||
}
|
||||
|
||||
# =============================================================================
|
||||
|
||||
# ╭──────────────────────────╮
|
||||
# │ main/general information │
|
||||
# ╰──────────────────────────╯
|
||||
|
||||
{
|
||||
email merp@merpmerp.merp
|
||||
import log caddy
|
||||
}
|
||||
|
||||
# ╭───────────────────────────────────────────────────────────────────────────╮
|
||||
# │ do an nginx and seperate snippets for sites into /etc/caddy/sites-enabled │
|
||||
# ╰───────────────────────────────────────────────────────────────────────────╯
|
||||
# to "disable" anything, just move the file to /etc/caddy/sites-disabled and reload caddy
|
||||
|
||||
import /etc/caddy/sites-enabled/*
|
||||
|
|
@ -1,84 +0,0 @@
|
|||
# mastodon (chuckya) frontend
|
||||
masto.beeping.synth.download, masto.booping.synth.download {
|
||||
root * /var/www/fedi-frontends/chuckya-fe
|
||||
file_server
|
||||
try_files {path} /
|
||||
|
||||
handle_path /favicon.png {
|
||||
root * /var/www/site/assets/synth.download/synth.png
|
||||
file_server
|
||||
import common-settings
|
||||
}
|
||||
|
||||
handle_path /packs {
|
||||
root * /var/www/fedi-frontends/chuckya-fe/packs
|
||||
file_server
|
||||
import common-settings
|
||||
}
|
||||
|
||||
import common-settings
|
||||
import log mastofe
|
||||
import robots-txt
|
||||
}
|
||||
|
||||
# akkoma fe for iceshrimp
|
||||
akko.beeping.synth.download {
|
||||
# redirect api endpoints to iceshrimp
|
||||
@redir {
|
||||
path /oauth/*
|
||||
path /api/*
|
||||
path /nodeinfo/*
|
||||
}
|
||||
handle @redir {
|
||||
reverse_proxy 127.0.0.1:24042
|
||||
import common-settings
|
||||
}
|
||||
|
||||
# favicon
|
||||
handle_path /favicon.png {
|
||||
root * /var/www/site/assets/synth.download/synth.png
|
||||
file_server
|
||||
import common-settings
|
||||
}
|
||||
|
||||
# akkoma frontend
|
||||
handle {
|
||||
header Cache-Control "max-age=3600"
|
||||
try_files {path} /
|
||||
root * /var/www/fedi-frontends/akkoma-fe
|
||||
file_server
|
||||
import common-settings
|
||||
}
|
||||
handle_path /static/* {
|
||||
header Cache-Control "max-age=3600"
|
||||
root * /var/www/fedi-frontends/akkoma-fe/static
|
||||
file_server
|
||||
import common-settings
|
||||
}
|
||||
|
||||
import common-settings
|
||||
import log akkofe
|
||||
import robots-txt
|
||||
}
|
||||
|
||||
# phanpy
|
||||
phanpy.beeping.synth.download, phanpy.booping.synth.download {
|
||||
root * /var/www/fedi-frontends/phanpy
|
||||
file_server
|
||||
try_files {path} /
|
||||
|
||||
import common-settings
|
||||
import log phanpy
|
||||
import robots-txt
|
||||
}
|
||||
|
||||
# pl-fe
|
||||
pl-fe.beeping.synth.download, pl-fe.booping.synth.download {
|
||||
root * /var/www/fedi-frontends/pl-fe
|
||||
file_server
|
||||
try_files {path} /
|
||||
|
||||
import common-settings
|
||||
import log pl-fe
|
||||
import robots-txt
|
||||
}
|
||||
|
|
@ -1,14 +0,0 @@
|
|||
beeping.synth.download {
|
||||
reverse_proxy 127.0.0.1:24042
|
||||
|
||||
# favicon stuff
|
||||
handle_path /assets/synth.download/synth.png {
|
||||
root * /var/www/site/assets/synth.download/synth.png
|
||||
file_server
|
||||
import common-settings
|
||||
}
|
||||
|
||||
import common-settings
|
||||
import log iceshrimp
|
||||
import robots-txt
|
||||
}
|
||||
|
|
@ -1,53 +0,0 @@
|
|||
merping.synth.download {
|
||||
@local {
|
||||
file
|
||||
not path /
|
||||
}
|
||||
@local_media {
|
||||
path_regexp /system/(.*)
|
||||
}
|
||||
@streaming {
|
||||
path /api/v1/streaming
|
||||
path /api/v1/streaming/*
|
||||
}
|
||||
@cache_control {
|
||||
path_regexp ^/(emoji|packs|/system/accounts/avatars|/system/media_attachments/files)
|
||||
}
|
||||
|
||||
root * /srv/docker/mastodon/public
|
||||
|
||||
handle_errors {
|
||||
rewrite 500.html
|
||||
file_server
|
||||
}
|
||||
|
||||
header {
|
||||
Strict-Transport-Security "max-age=31536000"
|
||||
}
|
||||
header /sw.js Cache-Control "public, max-age=0"
|
||||
header @cache_control Cache-Control "public, max-age=31536000, immutable"
|
||||
|
||||
handle @local {
|
||||
file_server
|
||||
}
|
||||
|
||||
handle @streaming {
|
||||
reverse_proxy 127.0.0.1:58834 {
|
||||
header_up Accept-Encoding identity
|
||||
}
|
||||
}
|
||||
|
||||
reverse_proxy 127.0.0.1:46098 {
|
||||
header_up Accept-Encoding identity
|
||||
header_up X-Forwarded-Port 443
|
||||
|
||||
transport http {
|
||||
keepalive 5s
|
||||
keepalive_idle_conns 10
|
||||
}
|
||||
}
|
||||
|
||||
import common-settings
|
||||
import log mastodon
|
||||
import robots-txt
|
||||
}
|
||||
|
|
@ -1,15 +0,0 @@
|
|||
*.pds.synth.download, pds.synth.download {
|
||||
#root * /var/www/pds-dash
|
||||
file_server
|
||||
|
||||
# since we utilize pds-dash to provide a proper "frontend" page for the pds, we need to manually redirect all known endpoints back to the pds
|
||||
# probably a better way to do this; haven't discovered it yet
|
||||
reverse_proxy /xrpc/* 127.0.0.1:24318
|
||||
reverse_proxy /oauth/* 127.0.0.1:24318
|
||||
reverse_proxy /.well-known/* 127.0.0.1:24318
|
||||
reverse_proxy /@atproto/* 127.0.0.1:24318
|
||||
|
||||
import common-settings
|
||||
import log pds
|
||||
import robots-txt
|
||||
}
|
||||
|
|
@ -1,28 +0,0 @@
|
|||
booping.synth.download {
|
||||
import common-settings
|
||||
import log sharkey
|
||||
import robots-txt
|
||||
|
||||
@activity_pub `header({'Content-Type': 'application/activity+json*'}) || header({'Content-Type': 'application/ld+json*'}) || header({'Accept': 'application/activity+json*'}) || header({'Accept': 'application/ld+json*'})`
|
||||
|
||||
route {
|
||||
# media service
|
||||
reverse_proxy /files/* 127.0.0.1:57378
|
||||
reverse_proxy /avatar/* 127.0.0.1:57378
|
||||
reverse_proxy /url 127.0.0.1:57378
|
||||
reverse_proxy /twemoji-badge/* 127.0.0.1:57378
|
||||
reverse_proxy /identicon/* 127.0.0.1:57378
|
||||
|
||||
# activitypub service
|
||||
reverse_proxy @activity_pub 127.0.0.1:47815
|
||||
reverse_proxy /api/v2/search 127.0.0.1:47815
|
||||
reverse_proxy /api/admin/federation/refresh-remote-instance-metadata 127.0.0.1:47815
|
||||
reverse_proxy /api/notes/polls/refresh 127.0.0.1:47815
|
||||
reverse_proxy /api/federation/update-remote-user 127.0.0.1:47815
|
||||
reverse_proxy /api/ap/get 127.0.0.1:47815
|
||||
reverse_proxy /api/ap/show 127.0.0.1:47815
|
||||
|
||||
# api + web frontend (+ general fallback)
|
||||
reverse_proxy 127.0.0.1:60628
|
||||
}
|
||||
}
|
||||
|
|
@ -9,6 +9,7 @@
|
|||
# sudo systemctl enable --now 3days@helperbot@--docker-cleanup.timer
|
||||
# sudo systemctl enable --now 3days@helperbot@--vacuum.timer
|
||||
# sudo systemctl enable --now daily@helperbot@--backup.timer
|
||||
# sudo systemctl enable --now daily@helperbot@--sync-blocklists.timer
|
||||
|
||||
[Unit]
|
||||
Description=Synth.Download helperbot maintenance script
|
||||
|
|
|
|||
|
|
@ -1,15 +0,0 @@
|
|||
services:
|
||||
caddy:
|
||||
image: caddy:alpine
|
||||
container_name: caddy
|
||||
restart: unless-stopped
|
||||
network_mode: host
|
||||
cap_add:
|
||||
- NET_ADMIN
|
||||
volumes:
|
||||
- /etc/caddy:/etc/caddy # configurations
|
||||
- ./caddy_data:/data # internal caddy data
|
||||
- ./caddy_config:/config # ^
|
||||
- /srv/docker/mastodon/public:/srv/docker/mastodon/public # mastodon web frontend
|
||||
- /var/www:/var/www # generic web system directory
|
||||
- /var/log/caddy:/var/log/caddy # log directory
|
||||
|
|
@ -7,7 +7,7 @@ services:
|
|||
- db
|
||||
- ip6net
|
||||
ports:
|
||||
- "127.0.0.1:24042:24042"
|
||||
- "192.168.1.73:24042:24042"
|
||||
environment:
|
||||
- ICESHRIMP_CONFIG_OVERRIDES=/app/config/configuration.ini
|
||||
volumes:
|
||||
|
|
|
|||
|
|
@ -39,7 +39,11 @@ FETCH_REPLIES_MAX_GLOBAL=1000
|
|||
FETCH_REPLIES_MAX_SINGLE=500
|
||||
FETCH_REPLIES_MAX_PAGES=500
|
||||
|
||||
# enable experimental quotes
|
||||
EXPERIMENTAL_FEATURES=inbound_quotes,outgoing_quotes
|
||||
|
||||
# tell federation to use more cores
|
||||
SIDEKIQ_CONCURRENCY=20
|
||||
WEB_CONCURRENCY=4
|
||||
|
||||
GITHUB_REPOSITORY=melontini/mastodon
|
||||
|
|
@ -14,7 +14,7 @@ services:
|
|||
healthcheck:
|
||||
test: ['CMD-SHELL',"curl -s --noproxy localhost localhost:3000/health | grep -q 'OK' || exit 1"]
|
||||
ports:
|
||||
- "127.0.0.1:46098:3000"
|
||||
- "192.168.1.73:46098:3000"
|
||||
depends_on:
|
||||
dragonfly:
|
||||
condition: service_healthy
|
||||
|
|
@ -36,7 +36,20 @@ services:
|
|||
healthcheck:
|
||||
test: ['CMD-SHELL', "curl -s --noproxy localhost localhost:4000/api/v1/streaming/health | grep -q 'OK' || exit 1"]
|
||||
ports:
|
||||
- "127.0.0.1:58834:4000"
|
||||
- "192.168.1.73:58834:4000"
|
||||
depends_on:
|
||||
dragonfly:
|
||||
condition: service_healthy
|
||||
|
||||
ingress:
|
||||
image: ghcr.io/melontini/mastodon-ingress:nightly
|
||||
restart: always
|
||||
env_file:
|
||||
- .env.secrets
|
||||
- .env
|
||||
networks:
|
||||
- masto
|
||||
- db
|
||||
depends_on:
|
||||
dragonfly:
|
||||
condition: service_healthy
|
||||
|
|
@ -69,7 +82,7 @@ services:
|
|||
networks:
|
||||
- masto
|
||||
environment:
|
||||
# these envvars are important to make dfdb act as closely as possible to redis for properly saving and loading data
|
||||
# these envvars are important in order for dragonflydb/misskey to interact with each other properly, and to load and save all data properly
|
||||
DFLY_snapshot_cron: '* * * * *'
|
||||
DFLY_version_check: false
|
||||
DFLY_default_lua_flags: allow-undeclared-keys
|
||||
|
|
@ -129,6 +142,17 @@ services:
|
|||
interval: 5s
|
||||
retries: 20
|
||||
|
||||
# used to passthrough web files via local network
|
||||
darkhttpd:
|
||||
image: p3terx/darkhttpd
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "192.168.1.73:42261:80"
|
||||
volumes:
|
||||
- ./public/system:/mastodon/public/system
|
||||
command:
|
||||
- "/mastodon/public/system"
|
||||
|
||||
# tor is a wip - consider setting up later
|
||||
## Uncomment to enable federation with tor instances along with adding the following ENV variables
|
||||
## http_hidden_proxy=http://privoxy:8118
|
||||
|
|
|
|||
|
|
@ -10,5 +10,5 @@ PDS_BSKY_APP_VIEW_URL=https://api.bsky.app
|
|||
PDS_BSKY_APP_VIEW_DID=did:web:api.bsky.app
|
||||
PDS_REPORT_SERVICE_URL=https://mod.bsky.app
|
||||
PDS_REPORT_SERVICE_DID=did:plc:ar7c4by46qjdydhdevvrndac
|
||||
PDS_CRAWLERS=https://bsky.network
|
||||
PDS_CRAWLERS=https://bsky.network,https://relay.cerulea.blue,https://relay.fire.hose.cam,https://relay2.fire.hose.cam,https://relay3.fr.hose.cam,https://atproto.africa
|
||||
LOG_ENABLED=true
|
||||
|
|
@ -4,7 +4,7 @@ services:
|
|||
image: ghcr.io/bluesky-social/pds:latest
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "127.0.0.1:24318:3000"
|
||||
- "192.168.1.73:24318:3000"
|
||||
networks:
|
||||
- ip6net
|
||||
volumes:
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ services:
|
|||
- ./db:/var/lib/postgresql/data
|
||||
networks:
|
||||
- postgres_db
|
||||
# default user values
|
||||
env_file:
|
||||
- .env
|
||||
healthcheck:
|
||||
|
|
|
|||
|
|
@ -12,10 +12,10 @@
|
|||
services:
|
||||
# api obviously handles most api endpoints, as well as serving the web frontend
|
||||
api:
|
||||
image: registry.activitypub.software/transfem-org/sharkey:latest
|
||||
image: registry.activitypub.software/transfem-org/sharkey:develop
|
||||
restart: always
|
||||
ports:
|
||||
- "127.0.0.1:60628:3001"
|
||||
- "192.168.1.73:60628:3001"
|
||||
networks:
|
||||
- ip6net
|
||||
- db
|
||||
|
|
@ -34,7 +34,7 @@ services:
|
|||
|
||||
# queue/process handling. basically the actual backend
|
||||
worker:
|
||||
image: registry.activitypub.software/transfem-org/sharkey:latest
|
||||
image: registry.activitypub.software/transfem-org/sharkey:develop
|
||||
restart: always
|
||||
networks:
|
||||
- db
|
||||
|
|
@ -52,10 +52,10 @@ services:
|
|||
|
||||
# handles federation/activitypub requests
|
||||
activity:
|
||||
image: registry.activitypub.software/transfem-org/sharkey:latest
|
||||
image: registry.activitypub.software/transfem-org/sharkey:develop
|
||||
restart: always
|
||||
ports:
|
||||
- "127.0.0.1:47815:3002"
|
||||
- "192.168.1.73:47815:3002"
|
||||
networks:
|
||||
- ip6net
|
||||
- db
|
||||
|
|
@ -75,10 +75,10 @@ services:
|
|||
|
||||
# handles media/reverse proxy (/files/*)
|
||||
media:
|
||||
image: registry.activitypub.software/transfem-org/sharkey:latest
|
||||
image: registry.activitypub.software/transfem-org/sharkey:develop
|
||||
restart: always
|
||||
ports:
|
||||
- "127.0.0.1:57378:3003"
|
||||
- "192.168.1.73:57378:3003"
|
||||
networks:
|
||||
- ip6net
|
||||
- db
|
||||
|
|
@ -118,7 +118,7 @@ services:
|
|||
DFLY_dir: '/data' # directory with the snapshot/data
|
||||
volumes:
|
||||
- ./dragonfly/general:/data
|
||||
|
||||
|
||||
# job queue dfdb
|
||||
dragonfly-queue:
|
||||
image: docker.dragonflydb.io/dragonflydb/dragonfly
|
||||
|
|
|
|||
|
|
@ -101,8 +101,8 @@ db:
|
|||
|
||||
# Auth
|
||||
# You can set user and pass from environment variables instead.
|
||||
user: example-misskey-user
|
||||
pass: example-misskey-pass
|
||||
#user: example-misskey-user
|
||||
#pass: example-misskey-pass
|
||||
|
||||
## Log a warning to the server console if any query takes longer than this to complete.
|
||||
## Measured in milliseconds; set to 0 to disable. (default: 300)
|
||||
|
|
@ -309,6 +309,10 @@ maxRemoteCwLength: 5000
|
|||
maxAltTextLength: 100000
|
||||
# Amount of characters that will be saved for remote media descriptions (alt text). Longer descriptions will be truncated to this length. (minimum: 1)
|
||||
maxRemoteAltTextLength: 100000
|
||||
# Amount of characters that can be used when writing user bios. Longer descriptions will be rejected. (minimum: 1)
|
||||
maxBioLength: 2048
|
||||
# Amount of characters that will be saved for remote user bios. Longer descriptions will be truncated to this length. (minimum: 1)
|
||||
maxRemoteBioLength: 10000
|
||||
|
||||
# Proxy for HTTP/HTTPS
|
||||
#proxy: http://127.0.0.1:3128
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue