Monorepo for Tangled
tangled.org
2.9 kB
119 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
35knot.tngl.boltless.dev {
36 tls internal
37 reverse_proxy knot:5555
38}
39
40# spindle
41http://spindle.tngl.boltless.dev {
42 reverse_proxy spindle:6555
43}
44
45spindle.tngl.boltless.dev {
46 tls internal
47 reverse_proxy spindle:6555
48}
49
50# knotmirror
51mirror.tngl.boltless.dev {
52 tls internal
53 reverse_proxy knotmirror:7000
54}
55
56# zoekt (internal service)
57zoekt.tngl.boltless.dev {
58 tls internal
59
60 # TODO: replace this with -indexserver_proxy flag
61 handle_path /indexserver/* {
62 reverse_proxy zoekt-tngl-indexserver:6060
63 }
64
65 handle {
66 reverse_proxy zoekt-webserver:6070
67 }
68}
69
70# appview
71tngl.boltless.dev {
72 tls internal
73 reverse_proxy appview:3000
74}
75
76# pdsls
77pdsls.tngl.boltless.dev {
78 tls internal
79 reverse_proxy pdsls:80
80}
81
82# bobbin (read appview / xrpc). permissive CORS so the web/ frontend in the
83# browser can hit it cross-origin (bobbin serves no CORS headers itself).
84bobbin.tngl.boltless.dev {
85 tls internal
86 @cors_preflight method OPTIONS
87 handle @cors_preflight {
88 header Access-Control-Allow-Origin "*"
89 header Access-Control-Allow-Methods "GET, POST, OPTIONS"
90 header Access-Control-Allow-Headers "Content-Type, authorization, atproto-proxy"
91 header Access-Control-Max-Age "86400"
92 respond 204
93 }
94 handle {
95 header Access-Control-Allow-Origin "*"
96 header Access-Control-Allow-Methods "GET, POST, OPTIONS"
97 header Access-Control-Allow-Headers "Content-Type, authorization, atproto-proxy"
98 reverse_proxy bobbin:8090
99 }
100}
101
102# bobbin over plain http on :8090 with permissive CORS, for local web/ dev.
103# bobbin serves no CORS headers itself (prod adds them at its reverse proxy).
104:8090 {
105 @cors_preflight method OPTIONS
106 handle @cors_preflight {
107 header Access-Control-Allow-Origin "*"
108 header Access-Control-Allow-Methods "GET, POST, OPTIONS"
109 header Access-Control-Allow-Headers "Content-Type, authorization, atproto-proxy"
110 header Access-Control-Max-Age "86400"
111 respond 204
112 }
113 handle {
114 header Access-Control-Allow-Origin "*"
115 header Access-Control-Allow-Methods "GET, POST, OPTIONS"
116 header Access-Control-Allow-Headers "Content-Type, authorization, atproto-proxy"
117 reverse_proxy bobbin:8090
118 }
119}