Faceți rețelele sociale în mod open source găzduind propriul dvs. server Akkoma Fediverse pe un Raspberry Pi.
Fediverse este o rețea de servere de social media interconectate care se federalizează pentru a forma o rețea coerentă, unde poți urmări și interacționa cu oamenii de care ești interesat.
În timp ce cel mai cunoscut tip de server Fediverse este Mastodon, Fediverse găzduiește zeci de tipuri de server. Akkoma este un server complet care este ușor de implementat pe Raspberry Pi. Iată cum…
Ce este Akkoma?
Ca și în cazul tuturor serverelor Fediverse, Akkoma se bazează pe protocolul ActivityPub pentru a rula. Este construit pe baza de cod populară Pleroma, dar împrumută funcții de la MissKey, cum ar fi capacitatea de a vedea pe ce tipuri de server rulează alte conturi de utilizator. Akkoma este în curs de dezvoltare foarte activă și este actualizat în mod regulat.
Cu Akkoma, puteți adăuga propriile pachete de pictograme, puteți utiliza o varietate de arome de reducere în postări, puteți personaliza ceea ce front-end-ul pe care îl folosește instanța Fediverse, editați postările dvs., citați postările altor persoane și setați un caracter arbitrar limită.
Cum se instalează Akkoma pe Raspberry Pi
Pe măsură ce utilizați Raspberry Pi ca server, mai întâi ar trebui să urmați ghidul nostru cum să vă configurați Raspberry Pi ca server web. În acest moment, nu trebuie să urmați pașii pentru configurarea MariaDB, PHP sau Docker Compose.
Odată ce Pi-ul tău este gata să funcționeze ca server, conectează-te la el de la distanță prin SSH și apoi instalați manual cea mai recentă versiune a Docker Compose.
Clonează depozitul Akkoma Git și trece în el:
git clonare https://akkoma.dev/AkkomaGang/akkoma.git -b stabil && cd akkoma
Acum setați variabilele de mediu pentru Docker Compose cu următoarea comandă:
cp docker-resources/env.example .env
ecou„DOCKER_USER=$(id -u):$(id -g)" >> .env
Acest proces durează câteva minute. Când reveniți la promptul de comandă, va trebui să construiți un container:
./docker-resources/build.sh
Din nou, acest lucru va dura ceva timp. Am cronometrat procesul la aproximativ trei minute, ceea ce vă oferă multe oportunități de a verifica altele proiecte auto-găzduite pe care le puteți rula pe un Raspberry Pi, sau poate jucați un joc de Solitaire în terminalul Linux.
Doar pentru că ați creat un container Docker nu înseamnă că sunteți pregătit să-l rulați încă. Lipiți următorul grup de comenzi și apoi apăsați introduce.
mkdir pgdata
./docker-resources/manage.sh mix deps.get
./docker-resources/manage.sh compilare mix
./docker-resources/manage.sh mix pleroma.instance gen
Răspuns Y când ați întrebat dacă doriți să instalați Hex și rebar3. Aplicația se va compila timp de aproximativ 12 minute. Folosiți acest timp pentru a asculta câteva podcasturi care îți vor spori pozitivitatea.
Simțindu-vă inspirat și revigorat, ar trebui să reveniți la linia de comandă și să răspundeți la câteva întrebări despre instanța dvs. Când vi se solicită, introduceți numele de domeniu fără http:// sau https:// prefix, urmat de numele instanței și adresa de e-mail.
Va trebui să alegeți dacă să lăsați motoarele de căutare să vă indexeze site-ul (depinde de dvs.) și dacă să stocați configurația în baza de date. Alege da pentru această opțiune, deoarece vă va permite să vă administrați instanța prin interfața web de administrare.
Setați numele de gazdă al bazei de date ca db, confirmați numele bazei de date și utilizatorul ca akkomași introduceți parola bazei de date ca akkoma.
indici RUM permiteți căutarea rapidă în baza de date PostgreSQL, așa că atingeți y când sunteți întrebat dacă doriți să le folosiți. Portul implicit este 4000. Puteți lăsa acest lucru așa cum este, cu excepția cazului în care utilizați portul 4000 pentru alt software auto-găzduit.
O modalitate ușoară de a verifica porturile în uz este să deschideți o altă fereastră sau filă de terminal și să introduceți:
sudo lsof -i -P -n | grep ASCULTĂ
Setați IP-ul pe care îl va asculta aplicația 0.0.0.0și acceptați valorile implicite sensibile pentru întrebările rămase.
Procesul se va încheia cu configurația instanței dvs. generată în config/generated_config.exs. Copiați acest fișier într-o locație nouă:
cp config/generated_config.exs config/prod.secret.exs
Următoarea comandă va returna ID-ul containerului ca șir de 64 de caractere. Copiați-l în altă parte pentru păstrare. Acum utilizați această comandă pentru a configura baza de date:
rulare docker-compose --rm akkoma psql -h db -U akkoma -f config/setup_db.psql
Când containerul s-a instalat cu succes, opriți-l cu:
docher Stop container_id_you_noted_earlier
Introduce:
./docker-resources/manage.sh mix ecto.migrate
... pentru a rula migrații și a vă recompila fișierele. Veți vedea mai multe notificări că „durează mai mult de 10 secunde”, iar procesul vă va oferi cu ușurință suficient timp pentru a face o ceașcă de ceai.
Instanța dvs. va avea nevoie de o interfață cu care utilizatorii să interacționeze. Pentru moment, veți avea nevoie doar de front-end-ul Pleroma și de front-end-ul de administrator:
./docker-resources/manage.sh mix pleroma.frontend instalare pleroma-fe --ref stabil
./docker-resources/manage.sh mix pleroma.frontend instalareadmin-fe --ref stabil
Acum sunteți gata să creați utilizatorul administrator. Introduce:
./docker-resources/manage.sh mix pleroma.user nou numele de utilizator dorit de e-mailul dvs@domeniu.tld --admin
Această comandă va returna un rezumat al informațiilor pe care le-ați introdus până acum. Verificați dacă este corect, apoi introduceți y.
Va fi generat un link pentru a reseta parola de administrator. Deoarece instanța dvs. nu rulează încă și nu este expusă internetului, notați linkul pentru mai târziu.
Expuneți-vă instanța Akkoma pe web
Va trebui să creați un fișier de configurare Apache pentru instanța dvs. Akkoma:
CD /etc/apache2/sites-available
sudonanoakkoma.conf
În noul fișier, lipiți următoarele:
<VirtualHost *:80>
Numele serveruluinumele-domeniul-vou.tld
ProxyPass / http://127.0.0.1:4000/
ProxyPassReverse / http:/127.0.0.1:4000/
ProxyPreserveHost activat
VirtualHost>
Salvați și ieșiți din nano cu Ctrl + O apoi Ctrl + X. Activați fișierul conf, apoi reporniți Apache:
sudoa2ensiteakkoma.conf
sudo service apache2 reporniți
Acum utilizați Certbot pentru a prelua și implementa certificate și chei TLS:
sudo certbot
Selectați numele de domeniu din listă și apăsați Enter. Reporniți Apache din nou cu:
sudo service apache2 reporniți
Navigați înapoi la directorul Akkoma și deschideți Docker Compose în modul detașat:
CD ~/akkoma
docker-compune până -d
Așteptați câteva minute, apoi vizitați instanța Akkoma folosind linkul de resetare a parolei. Asigurați-vă că alegeți o parolă puternică pentru a securiza instanța.
Personalizați-vă instanța Akkoma
Înainte de a face orice altceva, ar trebui să vizitați pagina dvs. de administrare web la numele-domeniul-vou.tld/pleroma/admin.
Există sute de opțiuni aici, dar puteți ignora în siguranță majoritatea dintre ele pentru moment. Selectați Setări > În fațăși citiți toate lucrurile pe care le puteți schimba. Poate doriți să alegeți un front end diferit de Pleroma implicit sau să setați fundalul la o imagine diferită.
Exact ceea ce alegi să faci aici depinde de tine și de utilizatorii tăi. Pentru a vă face o idee despre ceea ce este disponibil, am setat următoarele în instanța noastră demo:
Am ales să activăm textul verde pe liniile prefixate cu > caracter; setați stilul de afișare a conversației la arbore; am setat logo-ul site-ului la un desen animat al capului acestui scriitor și am încărcat un avertisment stilizat de imagine NSFW.
Mai serios, veți dori să alegeți feedul implicit pe care îl văd utilizatorii când se conectează și ce vizitatori vezi când nu sunt autentificați, modul în care sunt aranjate panourile și aromele sau Markdownul pe care vrei să le faci face.
Când ești mulțumit de partea din față, mergi la Setări > Instanță. Setați numele și descrierea site-ului, apoi aruncați o privire asupra limitelor.
În timp ce site-urile de rețele sociale principale au o limită de caractere destul de scăzută, le puteți seta pe ale dvs. la orice doriți. Am stabilit o limită de 750.000 de caractere pentru postările din propria instanță, dar am ales să supunem postările din instanțe la distanță la o limită de doar 100.000 de caractere. De asemenea, puteți seta limite pentru încărcarea fișierelor și avatare.
Alte considerații vitale includ dacă doriți ca utilizatorii să se poată înregistra direct pe instanța dvs., dacă preferați un sistem de invitație și dacă doriți să vă federați cu alte instanțe sau să vă gestionați site-ul de socializare într-o izolare splendidă. Există atât de multe opțiuni în Setări, ar trebui să petreceți câteva ore pentru a vă familiariza cu ele.
Când ați terminat, conectați-vă prin adresa URL principală și începe să-ți crești adepții Fediverse.
Akkoma nu este singurul server Fediverse
În timp ce Akkoma este serverul nostru Fediverse preferat și este ideal pentru a rula o instanță pe Raspberry Pi, este departe de a fi singurul.
Fediverse este locul ideal pentru a construi o piață online a orașului pentru grupuri de oameni care au aceleași idei și experimentând cu diferite tipuri, puteți găsi serverul perfect pentru a vă construi propriul dvs. online comunitate.