this repo has no description
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

migration succeeded!

MLC Bloeiman 12907a00

+263
+1
.gitignore
··· 1 + data
+2
caddy-reload.sh
··· 1 + #!/bin/bash 2 + podman exec -it caddy caddy reload --config /etc/caddy/Caddyfile
+93
data/caddy/conf/Caddyfile
··· 1 + { 2 + email webmaster@strawmelonjuice.com 3 + } 4 + 5 + # redirect icons to strawmediajuice 6 + (icon_redirect) { 7 + redir /assets/site_icon.png https://strawmelonjuice.com/strawmelonjuice.png permanent 8 + redir /favicon.ico https://strawmelonjuice.com/strawmelonjuice.png permanent 9 + redir /favicon.png https://strawmelonjuice.com/strawmelonjuice.png permanent 10 + redir /assets/img/favicon.svg https://strawmelonjuice.com/strawmelonjuice.png permanent 11 + redir /assets/img/favicon.png https://strawmelonjuice.com/strawmelonjuice.png permanent 12 + redir /assets/img/site_icon.svg https://strawmelonjuice.com/strawmelonjuice.png permanent 13 + redir /assets/img/logo.svg https://strawmelonjuice.com/strawmelonjuice.png permanent 14 + } 15 + 16 + knot.strawmelonjuice.com { 17 + reverse_proxy tangled:5555 18 + } 19 + 20 + music.strawmelonjuice.com { 21 + reverse_proxy navidrome:4533 22 + } 23 + 24 + git.strawmelonjuice.com { 25 + redir https://forge.strawmelonjuice.com{uri} 26 + } 27 + 28 + forge.strawmelonjuice.com { 29 + import icon_redirect 30 + 31 + # proxy to forgejo 32 + # reverse_proxy anubis-forge:3000 { 33 + reverse_proxy forgejo:3000 { 34 + header_up X-Real-Ip {remote_host} 35 + } 36 + } 37 + 38 + files-shared.strawmelonjuice.com { 39 + redir https://media.strawmelonjuice.com{uri} 40 + } 41 + 42 + media.strawmelonjuice.com { 43 + # request_body { 44 + # max_size 3GB 45 + # } 46 + 47 + reverse_proxy strawmedia:3022 48 + } 49 + 50 + www.strawmelonjuice.com, 51 + strawmelonjuice.com { 52 + # Old strawmelonjuice.php and Cynthia Full pages that google is still trying and its annoying me. 53 + @old_php_pages { 54 + query p=* 55 + query c=* 56 + } 57 + 58 + handle @old_php_pages { 59 + respond "This content is no longer available." 410 60 + } 61 + # ===================------ ATPROTO ------=================== 62 + handle_path /.well-known/atproto-did { 63 + respond "did:plc:jgtfsmv25thfs4zmydtbccnn" 64 + } 65 + 66 + # ================---- Matrix Homeserver ----================ 67 + handle /.well-known/matrix/* { 68 + header Access-Control-Allow-Origin "*" 69 + header Content-Type "application/json" 70 + 71 + # Using a Matcher inside the handle to respond differently 72 + @server path /.well-known/matrix/server 73 + respond @server `{"m.server": "strawmelonjuice.com:443"}` 74 + 75 + @client path /.well-known/matrix/client 76 + respond @client `{"m.homeserver": {"base_url": "https://strawmelonjuice.com"}}` 77 + } 78 + 79 + handle /_matrix/* { 80 + reverse_proxy matrix:8008 81 + } 82 + 83 + handle /_synapse/client/* { 84 + reverse_proxy matrix:8008 85 + } 86 + 87 + # ===================------ My Site ------=================== 88 + handle { 89 + root * /srv/strawmelonjuice-site/ 90 + try_files {path} {path}/index.html /unpopulated.html unpopulated.html 91 + file_server 92 + } 93 + }
+64
data/maindb/postgresql.conf
··· 1 + # Connectivity 2 + max_connections = 20 3 + superuser_reserved_connections = 3 4 + listen_addresses='*' 5 + 6 + # Memory Settings 7 + shared_buffers = '4096 MB' 8 + work_mem = '32 MB' 9 + maintenance_work_mem = '420 MB' 10 + huge_pages = off 11 + effective_cache_size = '11 GB' 12 + effective_io_concurrency = 1 # concurrent IO only really activated if OS supports posix_fadvise function 13 + random_page_cost = 4 # speed of random disk access relative to sequential access (1.0) 14 + 15 + # Monitoring 16 + shared_preload_libraries = 'pg_stat_statements' # per statement resource usage stats 17 + track_io_timing=on # measure exact block IO times 18 + track_functions=pl # track execution times of pl-language procedures if any 19 + 20 + # Replication 21 + wal_level = replica # consider using at least 'replica' 22 + max_wal_senders = 10 23 + synchronous_commit = on 24 + 25 + # Checkpointing: 26 + checkpoint_timeout = '15 min' 27 + checkpoint_completion_target = 0.9 28 + max_wal_size = '1024 MB' 29 + min_wal_size = '512 MB' 30 + 31 + # WAL archiving 32 + archive_mode = on # having it on enables activating P.I.T.R. at a later time without restart› 33 + archive_command = '/bin/true' # not doing anything yet with WAL-s 34 + 35 + 36 + # WAL writing 37 + wal_compression = on 38 + wal_buffers = -1 # auto-tuned by Postgres till maximum of segment size (16MB by default) 39 + wal_writer_delay = 200ms 40 + wal_writer_flush_after = 1MB 41 + wal_keep_size = '3650 MB' 42 + 43 + 44 + # Background writer 45 + bgwriter_delay = 200ms 46 + bgwriter_lru_maxpages = 100 47 + bgwriter_lru_multiplier = 2.0 48 + bgwriter_flush_after = 0 49 + 50 + # Parallel queries: 51 + max_worker_processes = 8 52 + max_parallel_workers_per_gather = 4 53 + max_parallel_maintenance_workers = 4 54 + max_parallel_workers = 8 55 + parallel_leader_participation = on 56 + 57 + # Advanced features 58 + enable_partitionwise_join = on 59 + enable_partitionwise_aggregate = on 60 + jit = on 61 + max_slot_wal_keep_size = '1000 MB' 62 + track_wal_io_timing = on 63 + maintenance_io_concurrency = 1 64 + wal_recycle = on
+16
start-db.sh
··· 1 + #!/bin/bash 2 + 3 + # Network 4 + podman network create server-net 2>/dev/null || true 5 + 6 + # Database 7 + podman run -d --name main-database \ 8 + --network-alias main-database \ 9 + --network-alias db \ 10 + -v postgres_data:/var/lib/postgresql/data:Z \ 11 + -v ./data/maindb/postgresql.conf:/etc/postgresql/postgresql.conf:ro \ 12 + -e POSTGRES_HOST_AUTH_METHOD=trust \ 13 + --network server-net \ 14 + postgres:18-alpine \ 15 + postgres -c 'config_file=/etc/postgresql/postgresql.conf' 16 + sleep 5
+87
start.sh
··· 1 + #!/bin/bash 2 + 3 + # Network 4 + podman network create server-net 2>/dev/null || true 5 + 6 + # StrawMediaJuice 7 + podman run -d --name strawmedia \ 8 + --replace \ 9 + --network server-net \ 10 + -e PORT=3022 \ 11 + -v ./data/strawmediajuice:/app/data/:Z \ 12 + strawmelonjuice/strawmediajuice:1.2.1 13 + 14 + # Navidrome 15 + podman run -d --name navidrome \ 16 + --replace \ 17 + --network server-net \ 18 + -v ./data/navidrome/music:/music:ro \ 19 + -v ./data/navidrome/data:/data:Z \ 20 + -p 4533:4533 \ 21 + -e ND_SCAN_SCHEDULE="@every 1h" \ 22 + deluan/navidrome:latest 23 + 24 + # Forgejo 25 + podman run -d --name forgejo \ 26 + --replace \ 27 + --network server-net \ 28 + -v ./data/forgejo:/data:Z \ 29 + -p 222:22 \ 30 + -e FORGEJO__database__DB_TYPE=postgres \ 31 + -e FORGEJO__database__HOST=main-database:5432 \ 32 + -e FORGEJO__database__NAME=forgejo \ 33 + -e FORGEJO__database__USER=forgejo \ 34 + -e FORGEJO__database__PASSWD=forgejo \ 35 + -e FORGEJO__DEFAULT__APP_NAME="Mar's forge" \ 36 + -e FORGEJO__DEFAULT__APP_SLOGAN="Strawmelonjuice's git server" \ 37 + -e FORGEJO__server__ROOT_URL=https://forge.strawmelonjuice.com \ 38 + -e FORGEJO__server__OFFLINE_MODE=false \ 39 + -e FORGEJO__mirror__ENABLED=true \ 40 + codeberg.org/forgejo/forgejo:14 41 + 42 + # Synapse 43 + podman run -d --name matrix \ 44 + --network-alias synapse \ 45 + --replace \ 46 + --network server-net \ 47 + -v ./data/matrix/synapse:/data:Z \ 48 + -p 8008:8008 \ 49 + -e SYNAPSE_CONFIG_PATH=/data/homeserver.yaml \ 50 + matrixdotorg/synapse:latest 51 + 52 + # WhatsApp Bridge 53 + podman run -d --name mautrix-whatsapp \ 54 + --replace \ 55 + --network server-net \ 56 + -v ./data/matrix/whatsapp:/data:Z \ 57 + dock.mau.dev/mautrix/whatsapp:latest 58 + 59 + # Tangled Knot 60 + # Building this image? Sure! 61 + # cd ~/knot-docker # or git clone https://tangled.org/tangled.org/knot-docker 62 + # podman build --build-arg TAG=v1.13.0-alpha -t tangled-knot . 63 + podman volume create tangled_keys 64 + podman run -d --name tangled \ 65 + --network server-net \ 66 + --network-alias tangled \ 67 + -e KNOT_SERVER_HOSTNAME=knot.strawmelonjuice.com \ 68 + -e KNOT_SERVER_OWNER="did:plc:jgtfsmv25thfs4zmydtbccnn" \ 69 + -e KNOT_SERVER_DB_PATH=/app/knotserver.db \ 70 + -e KNOT_REPO_SCAN_PATH=/home/git/repositories \ 71 + -v ./data/tangled/git:/home/git:Z \ 72 + -v ./data/tangled/server:/app:Z \ 73 + -v tangled_keys:/etc/ssh/keys:Z \ 74 + -p 2222:22 \ 75 + localhost/tangled-knot:latest 76 + 77 + # Caddy 78 + podman run -d --name caddy \ 79 + --replace \ 80 + --network server-net \ 81 + -p 80:80 \ 82 + -p 443:443 \ 83 + -p 443:443/udp \ 84 + -v ./data/caddy/data:/data:Z \ 85 + -v ./data/caddy/conf:/etc/caddy:Z \ 86 + -v /home/mar/site:/srv/strawmelonjuice-site:ro \ 87 + caddy:2