Progetto Compose per social media distribuiti
| .media | ||
| src | ||
| .gitignore | ||
| compose.yml | ||
| dns.zone | ||
| README.md | ||
Prima dell'avvio
- Inserisci la tua email in
./secrets/admin_email.txt.- Ad esempio,
me@example.org.
- Ad esempio,
- Inserisci il dominio alla radice dei servizi in
./secrets/public_domain.txt.- Ad esempio
example.org.
- Ad esempio
- Inserisci il tuo indirizzo IPv4 pubblico in
./secrets/public_ipv4.txt.- Ad esempio,
192.0.2.1.
- Ad esempio,
- Inserisci il tuo indirizzo IPv6 pubblico in
./secrets/public_ipv6.txt.- Ad esempio,
2001:db8:ffff:ffff:ffff:ffff:ffff:ffff.
- Ad esempio,
- Inserisci il tuo host SMTP in
./secrets/smtp_host.txt.- Ad esempio,
example.org.
- Ad esempio,
- Inserisci il tuo username SMTP in
./secrets/smtp_user.txt.- Ad esempio,
me.
- Ad esempio,
- Inserisci la tua password SMTP in
./secrets/smtp_pass.txt.- Ad esempio,
hunter2.
- Ad esempio,
- Genera una stringa casuale da inserire in
./secrets/ejabberd_service_password.txt.- Per farlo rapidamente:
openssl rand -hex 48 >secrets/ejabberd_service_password.txt
- Per farlo rapidamente:
- Genera una stringa casuale da inserire in
./secrets/ejabberd_synapse_password.txt.- Per farlo rapidamente:
openssl rand -hex 48 >secrets/ejabberd_synapse_password.txt
- Per farlo rapidamente:
- Genera una stringa casuale da inserire in
./secrets/synapse_register_password.txt.- Per farlo rapidamente:
openssl rand -hex 48 >secrets/synapse_register_password.txt
- Per farlo rapidamente:
- Configura il tuo provider DNS con i record presenti in
./dns.zone.- Ricordati di usare i tuoi indirizzi IPv4 e IPv6 pubblici nei record A e AAAA!
Primo avvio
- Avvia il progetto Compose.
- Puoi usare:
docker compose up -d
- Puoi usare:
Dopo il primo avvio
- Crea un nuovo utente su ejabberd "admin" che acquisirà immediatamente permessi di amministratore.
- Genera una password sicura e salvala da qualche parte.
- Per generare la password rapidamente:
openssl rand -hex 48 - Per creare il nuovo utente:
docker compose exec ejabberd ejabberdctl register "admin" "x.$(cat ./secrets/public_domain.txt)" "$password"
- Crea un nuovo utente su ejabberd "synapse" con
./secrets/ejabberd_synapse_password.txtcome password.- Per creare il nuovo utente:
docker compose exec ejabberd ejabberdctl register "synapse" "x.$(cat ./secrets/public_domain.txt)" "$(cat ./secrets/ejabberd_synapse_password.txt)"
- Per creare il nuovo utente:
- Crea un nuovo utente su Synapse "admin" con permessi di amministratore.
- Genera una password sicura e salvala da qualche parte.
- Per generare la password rapidamente:
openssl rand -hex 48 - Per creare il nuovo utente:
docker compose exec synapse register_new_matrix_user --config "/homeserver.yml" --user "admin" --admin --password "$password"
- Crea un nuovo utente su GoToSocial "admin" con permessi di amministratore.
- Genera una password sicura e salvala da qualche parte.
- Per generare la password rapidamente:
openssl rand -hex 36 - Per creare il nuovo utente:
docker compose exec --env GTS_HOST="f.$(cat ./secrets/public_domain.txt)" gotosocial /gotosocial/gotosocial admin account create --username "admin" --email "$email" --password "$password" - Per dare permessi da amministratore al nuovo utente:
docker compose exec --env GTS_HOST="f.$(cat ./secrets/public_domain.txt)" gotosocial /gotosocial/gotosocial admin account promote --username "admin"
Comandi utili
Crea nuovo utente ejabberd
docker compose exec ejabberd ejabberdctl register "$username" "x.$(cat ./secrets/public_domain.txt)" "$password"
Crea nuovo utente Synapse
docker compose exec synapse register_new_matrix_user --config "/homeserver.yml" --user "$username" --no-admin --password "$password"
Crea nuovo utente GoToSocial
docker compose exec --env GTS_HOST="f.$(cat ./secrets/public_domain.txt)" gotosocial /gotosocial/gotosocial admin account create --username "$username" --email "$email" --password "$password"