hub/Caddyfileblame
View source
e5b523e1{
e5b523e2 on_demand_tls {
e5b523e3 ask http://grove-api:4000/api/pages/ask
e5b523e4 }
e5b523e5}
e5b523e6
bdb18c97collab.{$DOMAIN} {
0b4b5828 handle /socket.io/* {
0b4b5829 reverse_proxy grove-web:3334
0b4b58210 }
0b4b58211
0b4b58212 handle /api/auth/* {
0b4b58213 reverse_proxy hub-api:4000
0b4b58214 }
0b4b58215
0b4b58216 handle /api/repos {
0b4b58217 reverse_proxy grove-api:4000
0b4b58218 }
0b4b58219
0b4b58220 handle /api/repos/* {
0b4b58221 reverse_proxy grove-api:4000
0b4b58222 }
0b4b58223
0b4b58224 handle {
0b4b58225 reverse_proxy grove-web:3000
0b4b58226 }
bdb18c927
bdb18c928 header {
bdb18c929 X-Content-Type-Options nosniff
bdb18c930 X-Frame-Options DENY
bdb18c931 }
bdb18c932}
bdb18c933
da0f65134canopy.{$DOMAIN} {
da0f65135 handle /api/auth/* {
da0f65136 reverse_proxy hub-api:4000
da0f65137 }
da0f65138
1da987439 handle /api/canopy/* {
1da987440 reverse_proxy grove-api:4000
1da987441 }
1da987442
da0f65143 handle /api/repos {
da0f65144 reverse_proxy grove-api:4000
da0f65145 }
da0f65146
da0f65147 handle /api/repos/* {
da0f65148 reverse_proxy grove-api:4000
da0f65149 }
da0f65150
da0f65151 handle {
da0f65152 reverse_proxy grove-web:3000
da0f65153 }
da0f65154
da0f65155 header {
da0f65156 X-Content-Type-Options nosniff
da0f65157 X-Frame-Options DENY
da0f65158 }
da0f65159}
da0f65160
fe2e54461ring.{$DOMAIN} {
fe2e54462 handle /api/auth/* {
fe2e54463 reverse_proxy hub-api:4000
fe2e54464 }
fe2e54465
fe2e54466 handle /api/ring/* {
fe2e54467 reverse_proxy grove-api:4000
fe2e54468 }
fe2e54469
fe2e54470 handle /api/repos {
fe2e54471 reverse_proxy grove-api:4000
fe2e54472 }
fe2e54473
fe2e54474 handle /api/repos/* {
fe2e54475 reverse_proxy grove-api:4000
fe2e54476 }
fe2e54477
fe2e54478 handle {
fe2e54479 reverse_proxy grove-web:3000
fe2e54480 }
fe2e54481
fe2e54482 header {
fe2e54483 X-Content-Type-Options nosniff
fe2e54484 X-Frame-Options DENY
fe2e54485 }
fe2e54486}
fe2e54487
4bb999b88isl.{$DOMAIN} {
4bb999b89 handle /ws {
4bb999b90 reverse_proxy isl-server:3011
4bb999b91 }
4bb999b92
4bb999b93 handle {
4bb999b94 reverse_proxy isl-server:3011
4bb999b95 }
4bb999b96
4bb999b97 header {
4bb999b98 X-Content-Type-Options nosniff
4bb999b99 X-Frame-Options SAMEORIGIN
4bb999b100 }
4bb999b101}
4bb999b102
135dfe5103{$DOMAIN} {
5f0fbcf104 handle /v2/* {
5f0fbcf105 reverse_proxy registry:5000
5f0fbcf106 }
5f0fbcf107
8d0dc12108 handle /api/canopy/* {
8d0dc12109 reverse_proxy grove-api:4000
8d0dc12110 }
8d0dc12111
f0bb192112 handle /api/auth/* {
135dfe5113 reverse_proxy hub-api:4000
135dfe5114 }
135dfe5115
4dfd09b116 handle /api/instances {
4dfd09b117 reverse_proxy hub-api:4000
4dfd09b118 }
4dfd09b119
f0bb192120 handle /api/instances/* {
f0bb192121 reverse_proxy hub-api:4000
f0bb192122 }
f0bb192123
79efd41124 handle /api/orgs {
79efd41125 reverse_proxy hub-api:4000
79efd41126 }
79efd41127
79efd41128 handle /api/orgs/* {
79efd41129 reverse_proxy hub-api:4000
79efd41130 }
79efd41131
ffa10b4132 handle /api/repos {
ffa10b4133 reverse_proxy grove-api:4000
ffa10b4134 }
ffa10b4135
f0bb192136 handle /api/repos/* {
f0bb192137 reverse_proxy grove-api:4000
f0bb192138 }
f0bb192139
85f7497140 handle /api/pages/* {
85f7497141 reverse_proxy grove-api:4000
85f7497142 }
85f7497143
135dfe5144 handle /health {
135dfe5145 reverse_proxy hub-api:4000
135dfe5146 }
135dfe5147
135dfe5148 handle {
4a006da149 reverse_proxy grove-web:3000
135dfe5150 }
135dfe5151
135dfe5152 header {
135dfe5153 X-Content-Type-Options nosniff
135dfe5154 X-Frame-Options DENY
135dfe5155 }
135dfe5156}
e5b523e157
ff50d03158# Grove Pages — path-based default hosting at pages.grove.host/{owner}/{repo}
ff50d03159pages.{$DOMAIN} {
ff50d03160 root * /srv/pages/sites/_pages
ff50d03161 file_server browse
ff50d03162
ff50d03163 header {
ff50d03164 X-Content-Type-Options nosniff
ff50d03165 X-Frame-Options SAMEORIGIN
ff50d03166 }
ff50d03167}
ff50d03168
ff50d03169# Grove Pages — custom domains
e5b523e170:443 {
e5b523e171 tls {
e5b523e172 on_demand
e5b523e173 }
e5b523e174
e5b523e175 root * /srv/pages/sites/{host}
1688ad1176 file_server browse
e5b523e177
e5b523e178 header {
e5b523e179 X-Content-Type-Options nosniff
e5b523e180 X-Frame-Options SAMEORIGIN
e5b523e181 }
e5b523e182}