# installer matrix / synapse avec docker sur linux
categories : Sysadmin;
tags : Linux; Docker; Freec0ding;
intro
Ici, je vais détailler l'installation de synapse , le serveur matrix sur linux.
database
Pour installer la base de données, voir : comment installer mysql et postgresql avec docker sur linux.
Je crée la base de données pour synapse : Set up database :
sudo docker exec -it postgresql-container bash
su - postgres
|
|
matrix
src : https://hub.docker.com/r/matrixdotorg/synapse :
Je crée le dossier utilisé pour le serveur synapse :
sudo mkdir -p /srv/matrix/data
Le fichier docker-compose pour matrix : matrix-docker-compose.yml :
|
|
Je génère le fichier de configuration pour synapse :
sudo docker-compose -p matrix -f ./matrix-docker-compose.yml run --rm synapse generate
Je backup le fichier de config pour synapse :
sudo cp /srv/matrix/data/homeserver.yaml /srv/matrix/data/homeserver.yaml.orig
J'édite le fichier de config /srv/matrix/data/homeserver.yaml pour utiliser postgresql :
|
|
Je crée le container synapse-container :
sudo docker-compose -p matrix -f ./matrix-docker-compose.yml up -d
Je crée un utilisateur admin pour le serveur synapse :
sudo docker exec -it synapse-container bash
register_new_matrix_user http://localhost:8008 -c /data/homeserver.yaml --user sysc4ll --password example-password
nginx
Pour installer nginx, voir : comment installer nginx avec docker sur linux.
Le fichier de config synapse.conf dans le container web : /srv/web/nginx/conf/conf.d/synapse.conf :
src : synapse reverse_proxy.html#nginx
|
|
Je restart le container nginx :
sudo docker exec nginx-container service nginx restart
Je peux maintenant me connecter avec un client comme : https://element.io/ sur matrix.freec0ding.dev en utilisant sysc4ll comme username et example-password comme mot de passe.