diff --git a/docs/deploying/docker-compose.with-caddy-labels.yml b/docs/deploying/docker-compose.with-caddy-labels.yml new file mode 100644 index 000000000..fd80a9856 --- /dev/null +++ b/docs/deploying/docker-compose.with-caddy-labels.yml @@ -0,0 +1,49 @@ +services: + caddy: + # This compose file uses caddy-docker-proxy as the reverse proxy for Continuwuity! + # For more info, visit https://github.com/lucaslorentz/caddy-docker-proxy + image: lucaslorentz/caddy-docker-proxy:ci-alpine + ports: + - 80:80 + - 443:443 + environment: + - CADDY_INGRESS_NETWORKS=caddy + networks: + - caddy + volumes: + - /var/run/docker.sock:/var/run/docker.sock + - ./data:/data + restart: unless-stopped + labels: + caddy: example.com + caddy.reverse_proxy: /.well-known/matrix/* homeserver:8008 + + homeserver: + image: forgejo.ellis.link/continuwuation/continuwuity:latest + restart: unless-stopped + command: /sbin/conduwuit + volumes: + - db:/var/lib/continuwuity + - /etc/resolv.conf:/etc/resolv.conf:ro # Use the host's DNS resolver rather than Docker's. + #- ./continuwuity.toml:/etc/continuwuity.toml + environment: + CONTINUWUITY_SERVER_NAME: example.com # EDIT THIS + CONTINUWUITY_DATABASE_PATH: /var/lib/continuwuity + CONTINUWUITY_ADDRESS: 0.0.0.0 + CONTINUWUITY_PORT: 8008 + #CONTINUWUITY_CONFIG: '/etc/continuwuity.toml' # Uncomment if you mapped config toml above + + # Required for .well-known delegation - edit these according to your chosen domain + CONTINUWUITY_WELL_KNOWN__CLIENT: https://matrix.example.com + CONTINUWUITY_WELL_KNOWN__SERVER: matrix.example.com:443 + networks: + - caddy + labels: + caddy: matrix.example.com + caddy.reverse_proxy: "{{upstreams 8008}}" + +volumes: + db: + +networks: + caddy: diff --git a/docs/deploying/docker-compose.with-caddy.yml b/docs/deploying/docker-compose.with-caddy.yml index 7f11ff604..609d67fd8 100644 --- a/docs/deploying/docker-compose.with-caddy.yml +++ b/docs/deploying/docker-compose.with-caddy.yml @@ -1,23 +1,32 @@ +networks: + caddy: + +volumes: + db: + +configs: + dynamic.yml: + content: | + https://example.com, https://example.com:8448 { + reverse_proxy http://homeserver:8008 + } + services: caddy: - # This compose file uses caddy-docker-proxy as the reverse proxy for Continuwuity! - # For more info, visit https://github.com/lucaslorentz/caddy-docker-proxy - image: lucaslorentz/caddy-docker-proxy:ci-alpine + image: docker.io/caddy:latest ports: - 80:80 - 443:443 - environment: - - CADDY_INGRESS_NETWORKS=caddy + - 8448:8448 networks: - caddy volumes: - - /var/run/docker.sock:/var/run/docker.sock - ./data:/data restart: unless-stopped - labels: - caddy: example.com - caddy.reverse_proxy: /.well-known/matrix/* homeserver:8008 - + configs: + - source: Caddyfile + target: /etc/caddy/Caddyfile + homeserver: image: forgejo.ellis.link/continuwuation/continuwuity:latest restart: unless-stopped @@ -27,24 +36,10 @@ services: - /etc/resolv.conf:/etc/resolv.conf:ro # Use the host's DNS resolver rather than Docker's. #- ./continuwuity.toml:/etc/continuwuity.toml environment: - CONTINUWUITY_SERVER_NAME: example.com # EDIT THIS + CONTINUWUITY_SERVER_NAME: example.com CONTINUWUITY_DATABASE_PATH: /var/lib/continuwuity CONTINUWUITY_ADDRESS: 0.0.0.0 CONTINUWUITY_PORT: 8008 #CONTINUWUITY_CONFIG: '/etc/continuwuity.toml' # Uncomment if you mapped config toml above - - # Required for .well-known delegation - edit these according to your chosen domain - CONTINUWUITY_WELL_KNOWN__CLIENT: https://matrix.example.com - CONTINUWUITY_WELL_KNOWN__SERVER: matrix.example.com:443 networks: - - caddy - labels: - caddy: matrix.example.com - caddy.reverse_proxy: "{{upstreams 8008}}" - -volumes: - db: - -networks: - caddy: - external: true + - caddy \ No newline at end of file diff --git a/docs/deploying/docker.mdx b/docs/deploying/docker.mdx index e29151aad..6b63561dc 100644 --- a/docs/deploying/docker.mdx +++ b/docs/deploying/docker.mdx @@ -147,6 +147,28 @@ ### Choose Your Reverse Proxy for more details and alternative solutions. ::: +#### With Caddy (using Caddyfile) + +
+docker-compose.with-caddy.yml + +```yaml file="./docker-compose.with-caddy.yml" + +``` + +
+ +#### With Caddy (using labels) + +
+docker-compose.with-caddy-labels.yml + +```yaml file="./docker-compose.with-caddy-labels.yml" + +``` + +
+ #### For existing Traefik setup
@@ -169,25 +191,6 @@ #### With Traefik included
-#### With Caddy Docker Proxy - -
-docker-compose.with-caddy.yml - -Replace all `example.com` placeholders with your own domain. - -```yaml file="./docker-compose.with-caddy.yml" - -``` - -If you don't already have a network for Caddy to monitor, create one first: - -```bash -docker network create caddy -``` - -
- #### For other reverse proxies