Instal·lar #Mastodon en una #Raspberry Pi 4B amb 4 o 8 GB de RAM, segona part

Configurar Mastodon

Desprès dels passos de la primera part ara ens tocava configurar Mastodon:

RAILS_ENV=production bundle exec rake mastodon:setup

Primer ens pregunta el nom del domini (domain name). En el meu cas és mamut.freeddns.org:

Your instance is identified by its domain name. Changing it afterward will break things. Domain name: mamut.freeddns.org

A continuació pregunta si volem activar el mode un sol usuari, mode que desactiva els registres i mostra el nostre perfil per defecte quan algú visiti l'instància:

Single user mode disables registrations and redirects the landing page to your public profile. Do you want to enable single user mode? (y/N) y

No volem Docker:

Are you using Docker to run Mastodon? (Y/n) n

En les següents preguntes simplement premem la tecla Enter:

PostgreSQL host: /var/run/postgresql
PostgreSQL port: 5432
Name of PostgreSQL user: mastodon
Password of PostgreSQL user:

Dirà que Database configuration works!. Perfecte! Seguim. Ara la configuració de Redis, També premem Enter en totes les questions:

Redis host: localhost
Redis port: 6379
Redis password: 

I també li agradarà: Redis configuration works!. Seguim!
Ara pregunta si volem desar els fitxers multi mèdia en el núvol. Responem que no:

Do you want to store uploaded files on the cloud? (y/N) N

I li diem que sí a enviar correus des de localhost:

Do you want to send e-mails from localhost? (y/N) y

Des de quina adreça? premem enter després de canviar notifications per notificacions:

E-mail address to send e-mails "from": (Mastodon <notificacions@mamut.freeddns.org>)

No volem enviar cap correu de prova:

Send a test e-mail with this configuration right now? (Y/n) N

Ja hem acabat. Ara pregunta si desem la configuració:

This configuration will be written to .env.production. Save configuration? (Y/n) Y

Ara diu això, li diem que sí:

Now that configuration is saved, the database schema must be loaded.If the database already exists, this will erase its contents. Prepare the database now? (Y/n) Y

Quan acabi:

Created database 'mastodon_production'. Done!

I el pas final, compilar els assets (aquí és on la Raspberry Pi 3B+ deia “de cap manera, que només tinc 1GB de RAM!”:

Compile the assets now? (Y/n)  Y

Trigarà uns minuts, paciència! Quan hagi acabat dirà:

Compiled all packs in /home/mastodon/live/public/packs. Done! All done! You can now power on the Mastodon server

Ens permet crear l'admin, doncs sí, nosaltres mateixos:

Do you want to create an admin user straight away? (Y/n) Y

Pregunta nom d'usuari i adreça de correu electrònic. Responem el que vulguem i ens retornarà una contrasenya. La desem ben desada per més tard!

Ja podem tornar al usuari root.

nginx

Copiem la plantilla per a nginx de mastodon:

cp /home/mastodon/live/dist/nginx.conf /etc/nginx/sites-available/mastodon

Editem el fitxer copiat per a canviar example.com per el nostre domini mamut.freeddns.org (apareix dues vegades) i desem els canvis. Comprovem que a nginx li agrada fent nginx -t. Si no dona cap error carreguem la nova configuració:

systemctl reload nginx

Certificat SSL

Per a obtenir el certificat SSL fem el següent:

certbot --nginx -d mamut.freeddns.org

Si ens dona l'error nginx: [emerg] no "ssl_certificate" is defined for the "listen ... ssl" directive in /etc/nginx/sites-enabled/mastodon:33, tornem a editar el fitxer /etc/nginx/sites-available/mastodoni comentem la línia del error, en aquest exemple la línia 33. Desem els canvis i tornem a provar:

certbot --nginx -d mamut.freeddns.org

Si tot ha anat bé:

Successfully received certificate.
Certificate is saved at: /etc/letsencrypt/live/mamut.freeddns.org/fullchain.pem
Key is saved at:         /etc/letsencrypt/live/mamut.freeddns.org/privkey.pem

unitats systemd

Copiem les tres unitats systemd necessàries:

cp /home/mastodon/live/dist/mastodon-*.service /etc/systemd/system/

Informem a systemd:

systemctl daemon-reload

I (ja era hora!) iniciem Mastodon:

systemctl enable --now mastodon-web mastodon-sidekiq mastodon-streaming

Encara que tinguem que parar la Raspberry per qualsevol motiu, aquest enable de dalt farà que Mastodon torni a posar-se en marxa quan engeguem de nou la Raspi.

Ja estem! podem visitar el nostre servidor Mastodon executant-se en la Raspberry de casa!