This repository has no description
3.7 kB
147 lines
1{
2 # use pinned CA from ./localinfra/certs
3 pki {
4 ca local {
5 name "Tangled Dev"
6 root_cn "Tangled Dev Root"
7 root {
8 format pem_file
9 cert /etc/caddy/certs/root.crt
10 key /etc/caddy/certs/root.key
11 }
12 }
13 }
14}
15
16# did-method-plc
17plc.tngl.boltless.dev {
18 tls internal
19 reverse_proxy plc:8080
20}
21
22# pds
23*.pds.tngl.boltless.dev, pds.tngl.boltless.dev {
24 tls internal
25 reverse_proxy pds:3000
26}
27
28# jetstream
29jetstream.tngl.boltless.dev {
30 tls internal
31 reverse_proxy jetstream:6008
32}
33
34# knot
35http://knot.tngl.boltless.dev {
36 reverse_proxy knot:5555
37}
38
39knot.tngl.boltless.dev {
40 tls internal
41 reverse_proxy knot:5555
42}
43
44# spindle
45http://spindle.tngl.boltless.dev {
46 reverse_proxy spindle:6555
47}
48
49spindle.tngl.boltless.dev {
50 tls internal
51 reverse_proxy spindle:6555
52}
53
54# knotmirror
55mirror.tngl.boltless.dev {
56 tls internal
57 @cors_preflight method OPTIONS
58 handle @cors_preflight {
59 header Access-Control-Allow-Origin "*"
60 header Access-Control-Allow-Methods "GET, POST, OPTIONS"
61 header Access-Control-Allow-Headers "Content-Type, authorization, atproto-proxy"
62 header Access-Control-Max-Age "86400"
63 respond 204
64 }
65 handle {
66 header Access-Control-Allow-Origin "*"
67 header Access-Control-Allow-Methods "GET, POST, OPTIONS"
68 header Access-Control-Allow-Headers "Content-Type, authorization, atproto-proxy"
69 reverse_proxy knotmirror:7000
70 }
71}
72
73# zoekt (internal service)
74zoekt.tngl.boltless.dev {
75 tls internal
76
77 # TODO: replace this with -indexserver_proxy flag
78 handle_path /indexserver/* {
79 reverse_proxy zoekt-tngl-indexserver:6060
80 }
81
82 handle {
83 reverse_proxy zoekt-webserver:6070
84 }
85}
86
87# appview
88tngl.boltless.dev {
89 tls internal
90 reverse_proxy appview:3000
91}
92
93# pdsls
94pdsls.tngl.boltless.dev {
95 tls internal
96 reverse_proxy pdsls:80
97}
98
99# camo and avatar
100camo.tngl.boltless.dev {
101 tls internal
102 reverse_proxy camo:8787
103}
104
105avatar.tngl.boltless.dev {
106 tls internal
107 reverse_proxy avatar:8787
108}
109
110# bobbin (read appview / xrpc). permissive CORS so the web/ frontend in the
111# browser can hit it cross-origin (bobbin serves no CORS headers itself).
112bobbin.tngl.boltless.dev {
113 tls internal
114 @cors_preflight method OPTIONS
115 handle @cors_preflight {
116 header Access-Control-Allow-Origin "*"
117 header Access-Control-Allow-Methods "GET, POST, OPTIONS"
118 header Access-Control-Allow-Headers "Content-Type, authorization, atproto-proxy"
119 header Access-Control-Max-Age "86400"
120 respond 204
121 }
122 handle {
123 header Access-Control-Allow-Origin "*"
124 header Access-Control-Allow-Methods "GET, POST, OPTIONS"
125 header Access-Control-Allow-Headers "Content-Type, authorization, atproto-proxy"
126 reverse_proxy bobbin:8090
127 }
128}
129
130# bobbin over plain http on :8090 with permissive CORS, for local web/ dev.
131# bobbin serves no CORS headers itself (prod adds them at its reverse proxy).
132:8090 {
133 @cors_preflight method OPTIONS
134 handle @cors_preflight {
135 header Access-Control-Allow-Origin "*"
136 header Access-Control-Allow-Methods "GET, POST, OPTIONS"
137 header Access-Control-Allow-Headers "Content-Type, authorization, atproto-proxy"
138 header Access-Control-Max-Age "86400"
139 respond 204
140 }
141 handle {
142 header Access-Control-Allow-Origin "*"
143 header Access-Control-Allow-Methods "GET, POST, OPTIONS"
144 header Access-Control-Allow-Headers "Content-Type, authorization, atproto-proxy"
145 reverse_proxy bobbin:8090
146 }
147}