Cómo expliqué en el Podcast, no existe una imagen oficial del contenedor Synapse, pero black0 ha creado una para todo tipo de arquitecturas, entre ellas ARM.

El contenedor de black0/synapse se crea exactamente igual que con la imagen oficial, matrixdotorg/synapse.
He utilizado la versión black0/synapse:v1.20.1, porque la versión latest, he visto que no tiene compatibilidad con arquitectura ARM, en el momento de escribir este artículo.
Si vas a instalarlo en un Ubuntu, Debian,... con arquitectura amd64, puedes utilizar la imagen oficial matrixdotorg/synapse. Sustituye en cada comando black0/synapse:v1.20.1 por matrixdotorg/synapse.
Vamos a utilizar la imagen con el comando generate, para generar el archivo de configuración de nuestro servidor matrix-synapse.
Crearemos un volumen en la ruta $HOME/docker/synapse-data, dónde están los archivos de configuración.
Recuerda añadir en la variable SYNAPSE_SERVER_NAME, la dirección de tu servidor.
Voy a utilizar matrix.ugeek.duckdns.org, como dirección de ejemplo de mi servidor.
#+BEGIN_EXAMPLE
docker run -it --rm -v $HOME/docker/synapse-data:/data -e SYNAPSESERVERNAMEmatrix.ugeek.duckdns.org -e SYNAPSE_REPORT_STATSyes black0/synapse:v1.20.1 generate
#+END_EXAMPLE
Ahora que tenemos los archivos de configuración, vamos a crear el contenedor con el servidor.
#+BEGIN_EXAMPLE
docker run -d --name matrix -v $HOME/docker/synapse-data:/data -p 8008:8008 black0/synapse:v1.20.1
#+END_EXAMPLE
Si todo ha salido correctamente, conectándonos a la dirección de nuestro servidor por el puerto 8008, veremos una página de Matrix, conforme el servidor está disponible.
Yo utilizo traefik a modo de proxy inverso y así también consigo mi certificado Let's Encrypt de un modo sencillo con este docker-compose.
Recuerda sustituir la dirección del servidor en los dos lugares que aparece en este docker-compose (matrix.ugeek.duckdns.org).
#+BEGIN_EXAMPLE
version: "3"
services:
matrix:
image: "black0/synapse:v1.20.1"
container_name: matrix
# ports:
# - "8008:8008"
networks:
volumes:
environment:
labels:
networks:
web:
external: true
#+END_EXAMPLE
Permitir la federación, significa poder comunicarte con otros servidores de Matrix-Synapse
Ahora para levantar el docker:
#+BEGIN_EXAMPLE
docker-compose up -d
#+END_EXAMPLE
Para c
docker exec -it matrix register_new_matrix_user -u USUARIO" -p "CONTRASEÑA" -a -c /data/homeserver.yaml https://midominio.duckdns.org
Los usuarios hay que crearlos desde un cliente de Matrix (fluffy Chat, Element,...), en esta web hay un amplio listado para todos los sistemas operativos https://matrix.org/clients/. Pero antes tenemos que habilitar la opción en el servidor.
Para permitir el registro de usuarios, hay que editar el archivo homeserver.yaml y desmarcar la "#" habilitando enable_registration: true.
#+BEGIN_EXAMPLE
nano ~/docker/synapse-data/homeserver.yaml
#+END_EXAMPLE
Desmarcamos la opción enable_registration y ponemos true.
#+BEGIN_EXAMPLE
# Enable registration for new users.
enable_registration: true
#+END_EXAMPLE
Reinicia el contenedor.
Ahora con nuestro cliente favorito, podemos crear nuestra cuenta en el servidor.
Si no quieres que se creen más usuarios, siempre puedes volver a marcar con "#" y poner false en enable_registration.
#+BEGIN_EXAMPLE
# Enable registration for new users.
enable_registration: false
#+END_EXAMPLE
Publicado por Angel el Thursday 28 January del 2021
También te puede interesar:
Powered by org-bash-blog
Written in OrgMode with Emacs and converted to HTML with Pandoc

Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 4.0 Internacional.