Učinite društvene medije na način otvorenog koda tako što ćete ugostiti vlastiti poslužitelj Akkoma Fediverse na Raspberry Pi.
Fediverse je mreža međusobno povezanih poslužitelja društvenih medija koji se udružuju u koherentnu mrežu, gdje možete pratiti i komunicirati s ljudima koji vas zanimaju.
Dok je najpoznatija vrsta Fediverse poslužitelja Mastodon, Fediverse je dom desecima vrsta poslužitelja. Akkoma je potpuno opremljen poslužitelj koji se lako postavlja na vaš Raspberry Pi. Evo kako…
Što je Akkoma?
Kao i kod svih Fediverse poslužitelja, Akkoma se za rad oslanja na ActivityPub protokol. Izgrađen je na popularnoj bazi kodova Pleroma, ali posuđuje značajke od MissKeya—kao što je mogućnost da vidite na kojim vrstama poslužitelja rade drugi korisnički računi. Akkoma je u vrlo aktivnom razvoju i redovito se ažurira.
S Akkomom možete dodati vlastite pakete ikona, koristiti različite okuse markdowna u objavama, prilagoditi što frontend koji koristi vaša Fediverse instanca, uredite svoje postove, citirajte postove drugih ljudi i postavite proizvoljan znak ograničiti.
Kako instalirati Akkomu na Raspberry Pi
Budući da svoj Raspberry Pi koristite kao poslužitelj, prvo biste trebali slijediti naš vodič kako postaviti svoj Raspberry Pi kao web poslužitelj. U ovom trenutku ne morate slijediti korake za postavljanje MariaDB-a, PHP-a ili Docker Composea.
Kada vaš Pi bude spreman za funkcioniranje kao poslužitelj, povežite se s njim daljinski putem SSH-a, a zatim ručno instalirati najnovije izdanje Docker Compose.
Klonirajte Akkoma Git repozitorij i premjestite se u njega:
git klon https://akkoma.dev/AkkomaGang/akkoma.git -b stable && cd akkoma
Sada postavite varijable okoline za Docker Compose sljedećom naredbom:
cp docker-resources/env.example .env
jeka"DOCKER_USER=$(id -u):$(id -g)" >> .env
Ovaj proces traje nekoliko minuta. Kada se vratite na naredbeni redak, morat ćete izgraditi spremnik:
./docker-resources/build.sh
Opet, ovo će potrajati. Proces smo tempirali na oko tri minute, što vam daje dovoljno mogućnosti da provjerite druge sami hostirani projekti koje možete pokretati na Raspberry Pi, ili možda igrajte igru Solitaire na Linux terminalu.
Samo zato što ste izradili Docker spremnik još ne znači da ste ga spremni pokrenuti. Zalijepite sljedeću grupu naredbi i zatim pritisnite Unesi.
mkdir pgdata
./docker-resources/manage.sh mix deps.get
./docker-resources/manage.sh mix kompilacija
./docker-resources/manage.sh mix pleroma.instance gen
Odgovor Y na pitanje želite li instalirati Hex i armaturu3. Aplikacija će se kompilirati još oko 12 minuta. Iskoristite ovo vrijeme da poslušate neke podcaste koji će potaknuti vašu pozitivnost.
Osjećajući se nadahnuto i osnaženo, trebali biste se vratiti na naredbeni redak i odgovoriti na neka pitanja o svojoj instanci. Kada se to od vas zatraži, unesite naziv svoje domene bez http:// ili https:// prefiks, nakon čega slijedi naziv vaše instance i vaša adresa e-pošte.
Morat ćete odabrati želite li dopustiti tražilicama da indeksiraju vašu stranicu (to ovisi o vama) i želite li pohraniti konfiguraciju u bazu podataka. Odaberite Da za ovu opciju jer će vam omogućiti da upravljate svojom instancom putem administratorskog web sučelja.
Postavite naziv hosta vaše baze podataka kao db, potvrdite ime baze podataka i korisnika kao akkoma, i unesite lozinku baze podataka kao akkoma.
RUM indeksi omogućuju brzo pretraživanje PostgreSQL baze podataka, pa dodirnite g na pitanje želite li ih koristiti. Zadani priključak je 4000. Možete ostaviti ovo kako jest osim ako ne koristite priključak 4000 za drugi softver koji se samostalno hostira.
Jednostavan način provjere korištenih priključaka je otvaranje drugog prozora ili kartice terminala i unos:
sudo lsof -i -P -n | grep SLUŠAJTE
Postavite IP adresu koju će aplikacija slušati 0.0.0.0, i prihvatite razumne zadane postavke za preostala pitanja.
Proces će završiti vašom konfiguracijom instance generiranom u config/generated_config.exs. Kopirajte ovu datoteku na novu lokaciju:
cp config/generated_config.exs config/prod.secret.exs
Sljedeća naredba vratit će ID spremnika kao niz od 64 znaka. Kopirajte ga na sigurno mjesto. Sada koristite ovu naredbu za postavljanje baze podataka:
docker-compose run --rm akkoma psql -h db -U akkoma -f config/setup_db.psql
Kada se spremnik uspješno postavi, zaustavite ga s:
lučki radnik Stop container_id_you_noted_earlier
Unesi:
./docker-resources/manage.sh mix ecto.migrate
...za pokretanje migracija i ponovno kompajliranje vaših datoteka. Vidjet ćete višestruke obavijesti da "traje više od 10 sekundi", a proces će vam lako dati dovoljno vremena da skuhate šalicu čaja.
Vaša će instanca trebati sučelje s kojim korisnici mogu komunicirati. Za sada će vam trebati samo Pleroma front end i administratorski front end:
./docker-resources/manage.sh mix pleroma.frontend instalirati pleroma-fe --ref stabilan
./docker-resources/manage.sh mix pleroma.frontend instaliratiadmin-fe --ref stabilan
Sada ste spremni za stvaranje admin korisnika. Unesi:
./docker-resources/manage.sh mix pleroma.user novi vaše-željeno-korisničko ime vašae-pošta@domena.tld --admin
Ova naredba će vratiti sažetak informacija koje ste do sada unijeli. Provjerite je li točna, a zatim unesite g.
Generirat će se veza za poništavanje administratorske lozinke. Budući da vaša instanca još nije pokrenuta i nije izložena internetu, zabilježite vezu za kasnije.
Izložite svoju Akkoma instancu webu
Morat ćete izraditi Apache konfiguracijsku datoteku za svoju Akkoma instancu:
CD /etc/apache2/sites-available
sudonanoakkoma.konf
U novu datoteku zalijepite sljedeće:
<VirtualHost *:80>
ServerNamenaziv-vaše-domene.tld
ProxyPass / http://127.0.0.1:4000/
ProxyPassReverse / http:/127.0.0.1:4000/
ProxyPreserveHost uključen
VirtualHost>
Spremite i izađite iz nano s Ctrl + O zatim Ctrl + X. Omogućite conf datoteku, zatim ponovno pokrenite Apache:
sudoa2ensiteakkoma.konf
sudo service apache2 restart
Sada koristite Certbot za dohvaćanje i implementaciju TLS certifikata i ključeva:
sudo certbot
Odaberite naziv svoje domene s popisa i pritisnite Enter. Ponovno pokrenite Apache s:
sudo service apache2 restart
Vratite se u svoj direktorij Akkoma i otvorite Docker Compose u odvojenom načinu rada:
CD ~/akkoma
docker-compose up -d
Pričekajte nekoliko minuta, a zatim posjetite svoju instancu Akkoma pomoću veze za ponovno postavljanje lozinke. Provjerite jeste li odabrali snažnu lozinku da biste osigurali instancu.
Prilagodite svoju Akkoma instancu
Prije nego što učinite bilo što drugo, trebali biste posjetiti svoju stranicu web administratora na naziv-vaše-domene.tld/pleroma/admin.
Ovdje postoje stotine opcija, ali većinu njih za sada možete slobodno zanemariti. Izaberi postavke > Frontend, i pročitajte sve stvari koje je moguće promijeniti. Možda ćete htjeti odabrati drugačiji prednji kraj od zadanog Plerome ili postaviti pozadinu na drugu sliku.
Što ćete točno odabrati ovdje ovisi o vama i vašim korisnicima. Kako bismo vam dali ideju o tome što je dostupno, postavili smo sljedeće na našu demo instancu:
Odlučili smo omogućiti zeleni tekst u recima s prefiksom > lik; postavite stil prikaza razgovora na stablo; postavili smo logo stranice na karikaturu glave ovog pisca i učitali stiliziranu NSFW sliku upozorenja.
Još ozbiljnije, htjet ćete odabrati zadani feed koji korisnici vide kada se prijave i što posjetitelji vidjeti kada nisu prijavljeni, način na koji su ploče raspoređene i okuse ili Markdown koje želite prikazati.
Kada ste zadovoljni s prednjim krajem, prijeđite na postavke > Primjer. Postavite naziv i opis svoje web stranice, a zatim pogledajte ograničenja.
Dok glavne društvene mreže imaju prilično nisko ograničenje broja znakova, svoje možete postaviti na ono što želite. Postavili smo ograničenje od 750.000 znakova za postove iz vlastite instance, ali smo odlučili podvrgnuti postove s udaljenih instanci samo ograničenju od 100.000 znakova. Također možete postaviti ograničenja za prijenos datoteka i avatare.
Druga vitalna pitanja uključuju želite li da se korisnici mogu izravno registrirati na vašoj instanci, želite li sustav samo s pozivnicom i želite li se udružiti s drugim instancama ili pokrenuti svoju stranicu društvenih medija u sjajnoj izolaciji. Postoji toliko mnogo opcija postavke, trebali biste provesti nekoliko sati upoznavajući se s njima.
Kada završite, prijavite se putem glavnog URL-a i počnite povećavati svoje Fediverse sljedbenike.
Akkoma nije jedini Fediverse poslužitelj
Dok je Akkoma naš omiljeni Fediverse poslužitelj i idealan je za pokretanje instance na vašem Raspberry Piju, daleko je od toga da je jedini.
Fediverse je idealno mjesto za izgradnju internetskog gradskog trga za grupe istomišljenika i eksperimentiranjem s različitim vrstama možete pronaći savršen poslužitelj za izgradnju vlastitog online poslužitelja zajednica.