Config files for my server. Except not my secrets
2
fork

Configure Feed

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

refactor caddyfile

vielle.dev ac9ebb52 bb710e17

verified
+59 -84
+59 -84
caddy/Caddyfile
··· 20 } 21 } 22 23 - {$HOST:localhost} { 24 - log prs { 25 - output stdout 26 - format console 27 - } 28 - 29 - reverse_proxy prs:4321 30 - } 31 - 32 - # redirect www. to not www. 33 - www.{$HOST:localhost} { 34 - redir https://{$HOST:localhost}{uri} 35 - } 36 - 37 - http://dongs.zip { 38 - redir https://dongs.zip{uri} 39 - } 40 - 41 - https://dongs.zip { 42 - log dong { 43 - output stdout 44 - format console 45 - } 46 - 47 - # atproto thing 48 handle /.well-known/atproto-did { 49 header Access-Control-Allow-Origin "*" 50 - respond "did:web:dongs.zip" 51 } 52 53 handle /.well-known/did.json { ··· 60 "https://w3id.org/security/multikey/v1", 61 "https://w3id.org/security/suites/secp256k1-2019/v1" 62 ], 63 - "id": "did:web:dongs.zip", 64 "alsoKnownAs": [ 65 - "at://dongs.zip" 66 ], 67 "verificationMethod": [ 68 { 69 - "id": "did:web:dongs.zip#atproto", 70 "type": "Multikey", 71 - "controller": "did:web:dongs.zip", 72 - "publicKeyMultibase": "zQ3sha8L4YgButkPAFtN4LB2cNai6bBbm7yFJ2kS5iG6KySxd" 73 } 74 ], 75 "service": [ 76 { 77 "id": "#atproto_pds", 78 "type": "AtprotoPersonalDataServer", 79 - "serviceEndpoint": "https://pds.vielle.dev" 80 } 81 ] 82 } 83 JSON 200 84 } 85 86 encode 87 root /srv/dong-web 88 - import error 89 file_server 90 } 91 92 - dong.{$HOST:localhost} { 93 - redir https://dongs.zip{uri} 94 } 95 96 - saltire-the-gays.{$HOST:localhost} { 97 log saltire { 98 output stdout 99 format console ··· 105 file_server 106 } 107 108 - dnd.{$HOST:localhost} { 109 log dnd { 110 output stdout 111 format console ··· 117 file_server 118 } 119 120 - pds.{$HOST:localhost} { 121 log pds { 122 output stdout 123 format console ··· 142 } 143 } 144 145 - *.pds.{$HOST:localhost} { 146 log pds-did { 147 output stdout 148 format console ··· 154 155 # required as magicDNS (tailscale) doesn't support 156 # subdomains without running own dns server 157 rewrite /.well-known/atproto-did /.well-known/atproto-did/{http.request.host} 158 159 - reverse_proxy {$PI_ADDRESS:pi}:8000 { 160 transport http { 161 dial_timeout 5s 162 } 163 } 164 } 165 166 - knot.{$HOST:localhost} { 167 log knot { 168 output stdout 169 format console ··· 173 @landing path /knot /styles.css 174 reverse_proxy @landing landing:8000 175 176 - reverse_proxy {$PI_ADDRESS:pi}:5555 177 } 178 179 - piper.{$HOST:localhost} { 180 log piper { 181 output stdout 182 format console 183 } 184 185 - reverse_proxy {$PI_ADDRESS:pi}:8010 186 - } 187 - 188 - alt.vielle.dev { 189 - handle /.well-known/atproto-did { 190 - header Access-Control-Allow-Origin "*" 191 - respond "did:web:alt.vielle.dev" 192 - } 193 - 194 - handle /.well-known/did.json { 195 - header Content-Type "application/json" 196 - header Access-Control-Allow-Origin "*" 197 - respond <<JSON 198 - { 199 - "@context": [ 200 - "https://www.w3.org/ns/did/v1", 201 - "https://w3id.org/security/multikey/v1", 202 - "https://w3id.org/security/suites/secp256k1-2019/v1" 203 - ], 204 - "id": "did:web:alt.vielle.dev", 205 - "alsoKnownAs": [ 206 - "at://alt.vielle.dev" 207 - ], 208 - "verificationMethod": [ 209 - { 210 - "id": "did:web:alt.vielle.dev#atproto", 211 - "type": "Multikey", 212 - "controller": "did:web:alt.vielle.dev", 213 - "publicKeyMultibase": "zQ3shpgbkbxvf5UjBwQcnjf68rg2DKTRQSttBEGokZbx2BzxY" 214 - } 215 - ], 216 - "service": [ 217 - { 218 - "id": "#atproto_pds", 219 - "type": "AtprotoPersonalDataServer", 220 - "serviceEndpoint": "https://pds.vielle.dev" 221 - } 222 - ] 223 - } 224 - JSON 200 225 - } 226 }
··· 20 } 21 } 22 23 + (did-web) { 24 handle /.well-known/atproto-did { 25 header Access-Control-Allow-Origin "*" 26 + respond "did:web:{args[0]}" 27 } 28 29 handle /.well-known/did.json { ··· 36 "https://w3id.org/security/multikey/v1", 37 "https://w3id.org/security/suites/secp256k1-2019/v1" 38 ], 39 + "id": "did:web:{args[0]}", 40 "alsoKnownAs": [ 41 + "at://{args[1]}" 42 ], 43 "verificationMethod": [ 44 { 45 + "id": "did:web:{args[0]}#atproto", 46 "type": "Multikey", 47 + "controller": "did:web:{args[0]}", 48 + "publicKeyMultibase": "{args[2]}" 49 } 50 ], 51 "service": [ 52 { 53 "id": "#atproto_pds", 54 "type": "AtprotoPersonalDataServer", 55 + "serviceEndpoint": "https://{args[3]}" 56 } 57 ] 58 } 59 JSON 200 60 } 61 + } 62 + 63 + ## main site 64 + www.{$HOST:vielle.dev} { 65 + redir https://{$HOST:vielle.dev}{uri} 66 + } 67 + 68 + {$HOST:vielle.dev} { 69 + log prs { 70 + output stdout 71 + format console 72 + } 73 + 74 + reverse_proxy prs:4321 75 + } 76 + 77 + ## dongs.zip 78 + {$DONG_HOST:dongs.zip} { 79 + log dong { 80 + output stdout 81 + format console 82 + } 83 + 84 + import did-web "{$DONG_HOST:dongs.zip}" "{$DONG_HOST:dongs.zip}" "zQ3sha8L4YgButkPAFtN4LB2cNai6bBbm7yFJ2kS5iG6KySxd", "pds.vielle.dev" 85 + import error 86 87 encode 88 root /srv/dong-web 89 file_server 90 } 91 92 + ## misc did:web 93 + alt.{$HOST:vielle.dev} { 94 + import did-web "alt.{$HOST:vielle.dev}" "alt.{$HOST:vielle.dev}" "zQ3shpgbkbxvf5UjBwQcnjf68rg2DKTRQSttBEGokZbx2BzxY" "pds.vielle.dev" 95 + } 96 + 97 + ## send old dong.vielle.dev => dongs.zip 98 + dong.{$HOST:vielle.dev} { 99 + redir https://{$DONG_HOST:dongs.zip}{uri} 100 } 101 102 + ## toy projects 103 + saltire-the-gays.{$HOST:vielle.dev} { 104 log saltire { 105 output stdout 106 format console ··· 112 file_server 113 } 114 115 + dnd.{$HOST:vielle.dev} { 116 log dnd { 117 output stdout 118 format console ··· 124 file_server 125 } 126 127 + ## atproto services 128 + ### pds 129 + pds.{$HOST:vielle.dev} { 130 log pds { 131 output stdout 132 format console ··· 151 } 152 } 153 154 + *.pds.{$HOST:vielle.dev} { 155 log pds-did { 156 output stdout 157 format console ··· 163 164 # required as magicDNS (tailscale) doesn't support 165 # subdomains without running own dns server 166 + # changes example.PDS_DOMAIN/.well-known/atproto-did to PDS_DOMAIN/.well-known/atproto-did/example.PDS_DOMAIN 167 + # requires support in the pds (see https://tangled.org/vielle.dev/pi-config) 168 rewrite /.well-known/atproto-did /.well-known/atproto-did/{http.request.host} 169 170 + reverse_proxy {$PI_ADDRESS:pi}:{$PI_PORT_PDS:8000} { 171 transport http { 172 dial_timeout 5s 173 } 174 } 175 } 176 177 + ### tangled knot 178 + # (see nginx.conf for ssh proxying) 179 + knot.{$HOST:vielle.dev} { 180 log knot { 181 output stdout 182 format console ··· 186 @landing path /knot /styles.css 187 reverse_proxy @landing landing:8000 188 189 + reverse_proxy {$PI_ADDRESS:pi}:{$PI_PORT_KNOT:5555} 190 } 191 192 + ### piper instance 193 + # technically publicly visible... its _fine_ (+ i cant do jack shit abt it rn so) 194 + piper.{$HOST:vielle.dev} { 195 log piper { 196 output stdout 197 format console 198 } 199 200 + reverse_proxy {$PI_ADDRESS:pi}:{$PO_PORT_PIPER:8010} 201 }