User Tools

Site Tools


doc:appunti:linux:sa:matrix

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
doc:appunti:linux:sa:matrix [2026/09/03 10:58] – [Migrazione da virtual environment Python a container Docker] niccolodoc:appunti:linux:sa:matrix [2026/09/04 15:05] (current) – [Permessi] niccolo
Line 415: Line 415:
 Gli oggetti da migrare sono: Gli oggetti da migrare sono:
  
-  * Directory **/etc/matrix-synapse/** +  * Directory **/etc/matrix-synapse/** che contiene i file di configurazione. 
-  * Directory **/var/lib/matrix-synapse/** +  * Directory **/var/lib/matrix-synapse/** che contiene il //media_store//. 
-  * PostgreSQL database **synapse** +  * PostgreSQL database **synapse** e relativo utente. 
-  * Configurazione **reverse proxy** Apache +  * Configurazione **reverse proxy** Apache. 
-  * Nome **dominio** DNS+  * **Nome a dominio** nel DNS
 + 
 +Sulla macchina destinazione NON si esegue la configurazione iniziale, ma si crea il named volume che conterrà i file di configurazione e il media_store: 
 + 
 +<code> 
 +docker volume create synapse-data 
 +</code> 
 + 
 +Viene creata la directory **/var/lib/docker/volumes/synapse-data/_data/** che sarà la radice del volume. 
 + 
 +Nella radice di tale volume si devono copiare i file dalla vecchia installazione: 
 + 
 +  * **homeserver.yaml** 
 +  * **homeserver.signing.key** 
 +  * **log.yaml** 
 + 
 +È consigliabile rinominare il file **homeserver.signing.key** usando il **SYNAPSE_SERVER_NAME**, come farebbe la procedura  //generate// di Synapse, quindi qualcosa del tipo **matrix.example.org.signing.key**. Il nome del file deve essere correttamente indicato nel file di configurazione yaml dal parametro **signing_key_path**. 
 + 
 +Si devono copiare anche il media store e la directory uploads originali nella radice del volume Docker, con questo mapping: 
 + 
 +  * **/var/lib/matrix-synapse/media/** => **/data/media_store/** 
 +  * **/var/lib/matrix-synapse/uploads/** => **/data/uploads/** 
 + 
 +I parametri che è necessario aggiustare nel file homeserver.yaml sono: 
 + 
 +<file> 
 +log_config: "/data/log.yaml" 
 +media_store_path: "/data/media_store" 
 +uploads_path: "/data/uploads" 
 +signing_key_path: "/data/homeserver.signing.key" 
 +bind_addresses: 
 +  - '0.0.0.0' 
 +database: 
 +  name: "psycopg2" 
 +  args: 
 +    ... 
 +    host: host.docker.internal 
 +    port: 5432 
 +</file> 
 + 
 +Sulla macchina origine si esegue il dump del database: 
 + 
 +<code> 
 +su - postgres -c "pg_dump -Fc synapse"
 +    > synapse-$(hostname)-$(date +%Y-%m-%d).dump 
 +</code> 
 + 
 +Quindi sulla macchina destinazione si esegue il restore: 
 + 
 + 
 +==== Permessi ==== 
 + 
 +Verificare che i file di configurazione siano leggibili solo dall'utente con UID 991 (nell'immagine Docker di matrix/synapse è l'utente utilizzato per eseguire il servizio): 
 + 
 +<code> 
 +cd /var/lib/docker/volumes/synapse-data/_data 
 +chown 991:991 homeserver.yaml homeserver.signing.key 
 +chmod 0600 homeserver.yaml homeserver.signing.key 
 +</code> 
 + 
 +FIXME Anche il media_store e la directory uploads devono essere sistemate.
  
 ===== Web References ===== ===== Web References =====
doc/appunti/linux/sa/matrix.1788425894.txt.gz · Last modified: by niccolo