Run Element Web in tightened/read-only mode without a custom nginx config

Newer Element Web versions allow for the nginx port to be
overriden, etc., and provide instructions for running in read-only mode.

This makes our custom `nginx.conf` patches unnecessary.

Passing the correct `ELEMENT_WEB_PORT` environment variable
also helps with future changes.

Another benefit of this (besides keeping closer to upstream
recommendations and the improved simplicity) is that:

- the container can run its entrypoint env-substitutions code now,
  without reporting errors

- IPv6 for nginx works, so `matrix-client-element:8080` is accessible
  via IPv6 on the container network now
  (this affects only for Traefik's communicaton with Element Web
  internally; public connectivity was handled by Traefik and IPv6 was
  available there even before)

Ref:

- 2052080d7d/docs/install.md (docker)
- https://github.com/element-hq/element-web/pull/28849
- https://github.com/element-hq/element-web/pull/28840
This commit is contained in:
Slavi Pantaleev
2025-03-11 22:21:47 +02:00
parent 16f9e7dd46
commit e65d198841
6 changed files with 20 additions and 73 deletions

View File

@ -48,9 +48,16 @@ matrix_client_element_container_network: ''
# Use this to expose this container to a reverse proxy, which runs in a different container network.
matrix_client_element_container_additional_networks: []
# Controls the in-container port that Element will use.
#
# Also see: `matrix_client_element_container_http_host_bind_port`
matrix_client_element_container_port: 8080
# Controls whether the matrix-client-element container exposes its HTTP port (tcp/8080 in the container).
#
# Takes an "<ip>:<port>" or "<port>" value (e.g. "127.0.0.1:8765"), or empty string to not expose.
#
# Also see: `matrix_client_element_container_port`
matrix_client_element_container_http_host_bind_port: ''
# matrix_client_element_container_labels_traefik_enabled controls whether labels to assist a Traefik reverse-proxy will be attached to the container.