Ustvarite družbene medije na odprtokodni način, tako da gostite lasten strežnik Akkoma Fediverse na Raspberry Pi.
Fediverse je omrežje medsebojno povezanih strežnikov družbenih medijev, ki se združujejo v koherentno omrežje, kjer lahko spremljate in komunicirate z ljudmi, ki vas zanimajo.
Medtem ko je najbolj znana vrsta strežnika Fediverse Mastodon, je Fediverse dom na desetine vrst strežnikov. Akkoma je strežnik z vsemi funkcijami, ki ga je enostavno namestiti na vaš Raspberry Pi. Evo, kako ...
Kaj je Akkoma?
Kot pri vseh strežnikih Fediverse se tudi Akkoma za delovanje zanaša na protokol ActivityPub. Zgrajen je na priljubljeni kodni bazi Pleroma, vendar si izposoja funkcije od MissKey – kot je možnost videti, na katerih vrstah strežnikov se izvajajo drugi uporabniški računi. Akkoma je v zelo aktivnem razvoju in se redno posodablja.
Z Akkoma lahko dodate svoje lastne pakete ikon, uporabite različne okuse znižanja v objavah, prilagodite čelni del, ki ga uporablja vaš primerek Fediverse, urejajte svoje objave, citirajte objave drugih ljudi in nastavite poljuben znak omejitev.
Kako namestiti Akkoma na Raspberry Pi
Ker svoj Raspberry Pi uporabljate kot strežnik, morate najprej slediti našemu vodniku kako nastaviti svoj Raspberry Pi kot spletni strežnik. Na tej točki vam ni treba slediti korakom za nastavitev MariaDB, PHP ali Docker Compose.
Ko je vaš Pi pripravljen za delovanje kot strežnik, se povežite z njim na daljavo prek SSH in nato ročno namestite najnovejšo izdajo Docker Compose.
Klonirajte repozitorij Akkoma Git in se premaknite vanj:
git klon https://akkoma.dev/AkkomaGang/akkoma.git -b stabilen && cd akkoma
Zdaj nastavite okoljske spremenljivke za Docker Compose z naslednjim ukazom:
cp docker-resources/env.example .env
odmev"DOCKER_USER=$(id -u):$(id -g)" >> .env
Ta postopek traja nekaj minut. Ko se vrnete v ukazni poziv, boste morali zgraditi vsebnik:
./docker-resources/build.sh
Še enkrat, to bo trajalo nekaj časa. Postopek smo namerili na približno tri minute, kar vam daje veliko priložnosti, da preverite druge samostojni projekti, ki jih lahko izvajate na Raspberry Pi, ali morda igrajte igro Solitaire v terminalu Linux.
Samo zato, ker ste ustvarili vsebnik Docker, še ne pomeni, da ste ga pripravljeni zagnati. Prilepite naslednjo skupino ukazov in pritisnite Vnesite.
mkdir pgdata
./docker-resources/manage.sh mix deps.get
./docker-resources/manage.sh mix prevesti
./docker-resources/manage.sh mix pleroma.instance gen
Odgovori Y na vprašanje, ali želite namestiti Hex and Rebar3. Aplikacija se bo prevajala približno nadaljnjih 12 minut. Izkoristite ta čas, da nekaj poslušate podcasti, ki bodo povečali vašo pozitivnost.
Če ste navdihnjeni in okrepčani, se morate vrniti v ukazno vrstico in odgovoriti na nekaj vprašanj o vašem primerku. Ko ste pozvani, vnesite ime svoje domene brez http:// oz https:// predpono, ki ji sledita ime vašega primerka in vaš e-poštni naslov.
Izbrati boste morali, ali boste dovolili iskalnikom, da indeksirajo vaše spletno mesto (odvisno od vas) in ali boste konfiguracijo shranili v bazo podatkov. Izberite ja za to možnost, saj vam bo omogočila upravljanje vašega primerka prek skrbniškega spletnega vmesnika.
Nastavite ime gostitelja svoje baze podatkov kot db, potrdite ime baze podatkov in uporabnika kot akkomain vnesite geslo baze podatkov kot akkoma.
RUM indeksi omogočajo hitro iskanje po bazi podatkov PostgreSQL, zato tapnite l na vprašanje, ali jih želite uporabiti. Privzeta vrata so 4000. To lahko pustite tako, kot je, razen če uporabljate vrata 4000 za drugo programsko opremo, ki gostuje sami.
Preprost način za preverjanje, ali so vrata v uporabi, je, da odprete drugo terminalsko okno ali zavihek in vnesete:
sudo lsof -i -P -n | grep POSLUŠAJTE
Nastavite IP, ki ga bo aplikacija poslušala 0.0.0.0in sprejmite razumne privzete nastavitve za preostala vprašanja.
Postopek se bo končal z vašo konfiguracijo primerka, ustvarjeno v config/generated_config.exs. Kopirajte to datoteko na novo lokacijo:
cp config/generated_config.exs config/prod.secret.exs
Naslednji ukaz vrne ID vsebnika kot 64-mestni niz. Kopirajte ga drugam, da ga shranite. Zdaj uporabite ta ukaz za nastavitev baze podatkov:
zagon docker-compose --rm akkoma psql -h db -U akkoma -f config/setup_db.psql
Ko je vsebnik uspešno nastavljen, ga zaustavite z:
docker stop container_id_you_noted_earlier
Vnesite:
./docker-resources/manage.sh mix ecto.migrate
... za izvajanje selitev in ponovno prevajanje datotek. Videli boste več obvestil, da "traja več kot 10 sekund", postopek pa vam bo zlahka dal dovolj časa, da si pripravite skodelico čaja.
Vaš primerek potrebuje vmesnik za interakcijo uporabnikov. Zaenkrat boste potrebovali samo sprednji del Pleroma in skrbniški vmesnik:
./docker-resources/manage.sh mix pleroma.frontend namestite pleroma-fe --ref stabilen
./docker-resources/manage.sh mix pleroma.frontend namestiteadmin-fe --ref stabilen
Zdaj ste pripravljeni ustvariti skrbniškega uporabnika. Vnesite:
./docker-resources/manage.sh mix pleroma.user novo vaše-želeno-uporabniško ime vaš e-poštni naslov@domena.tld --admin
Ta ukaz bo vrnil povzetek informacij, ki ste jih do sedaj vnesli. Preverite, ali je pravilno, nato vnesite l.
Ustvarjena bo povezava za ponastavitev skrbniškega gesla. Ker se vaš primerek še ne izvaja in ni izpostavljen internetu, si zabeležite povezavo za pozneje.
Izpostavite svoj primerek Akkoma spletu
Za svoj primerek Akkoma boste morali ustvariti konfiguracijsko datoteko Apache:
cd /etc/apache2/sites-available
sudonanoakkoma.conf
V novo datoteko prilepite naslednje:
<VirtualHost *:80>
Ime strežnikaime-vaše-domene.tld
ProxyPass / http://127.0.0.1:4000/
ProxyPassReverse / http:/127.0.0.1:4000/
ProxyPreserveHost vklopljen
VirtualHost>
Shranite in zapustite nano z Ctrl + O potem Ctrl + X. Omogočite datoteko conf in znova zaženite Apache:
sudoa2ensiteakkoma.conf
ponovni zagon storitve sudo apache2
Zdaj uporabite Certbot za pridobivanje in uvajanje potrdil in ključev TLS:
sudo certbot
Na seznamu izberite ime svoje domene in pritisnite Enter. Ponovno zaženite Apache z:
ponovni zagon storitve sudo apache2
Pomaknite se nazaj v svoj imenik Akkoma in prikličite Docker Compose v ločenem načinu:
cd ~/akkoma
docker-compose up -d
Počakajte nekaj minut, nato obiščite svojo instanco Akkoma s povezavo za ponastavitev gesla. Za zaščito primerka izberite močno geslo.
Prilagodite svoj primerek Akkoma
Preden naredite kar koli drugega, obiščite svojo spletno skrbniško stran na ime-vaše-domene.tld/pleroma/admin.
Tukaj je na stotine možnosti, vendar jih lahko večino za zdaj mirno prezrete. Izberite nastavitve > Frontend, in preberite vse stvari, ki jih je mogoče spremeniti. Morda boste želeli izbrati drugačen sprednji del od privzetega Pleroma ali nastaviti ozadje na drugo sliko.
Kaj točno boste izbrali tukaj, je odvisno od vas in vaših uporabnikov. Da bi vam predstavili, kaj je na voljo, smo na našem demo primerku nastavili naslednje:
Odločili smo se, da omogočimo zeleno besedilo v vrsticah s predpono > značaj; nastavite slog prikaza pogovora na drevo; logotip spletnega mesta smo nastavili na risanko glave tega pisca in naložili stilizirano slikovno opozorilo NSFW.
Bolj resno, želeli boste izbrati privzeti vir, ki ga uporabniki vidijo, ko se prijavijo, in katere obiskovalce videli, kdaj niso prijavljeni, kako so razporejene plošče in okuse ali Markdown, ki jih želite upodabljati.
Ko ste zadovoljni s sprednjim delom, pojdite na nastavitve > Primerek. Nastavite ime in opis spletnega mesta, nato pa si oglejte omejitve.
Medtem ko imajo običajna spletna mesta družbenih medijev dokaj nizko omejitev znakov, lahko svojega nastavite na karkoli želite. Postavili smo omejitev 750.000 znakov za objave iz lastne instance, vendar smo se odločili, da objave iz oddaljenih instanc omejimo na zgolj 100.000 znakov. Nastavite lahko tudi omejitve za nalaganje datotek in avatarjev.
Drugi bistveni vidiki vključujejo, ali želite, da se uporabniki lahko neposredno registrirajo na vaš primerek, ali želite sistem samo s povabilom in ali se želite združiti z drugimi primerki ali voditi svoje spletno mesto družbenih medijev v čudoviti izolaciji. Obstaja toliko možnosti v nastavitve, morate porabiti nekaj ur, da se seznanite z njimi.
Ko končate, se prijavite prek glavnega URL-ja in začnite povečevati svoje sledilce Fediverse.
Akkoma ni edini strežnik Fediverse
Čeprav je Akkoma naš najljubši strežnik Fediverse in je idealen za izvajanje instance na vašem Raspberry Pi, še zdaleč ni edini.
Fediverse je idealno mesto za izgradnjo spletnega mestnega trga za skupine enako mislečih ljudi in z eksperimentiranjem z različnimi vrstami lahko najdete popoln strežnik za izdelavo lastnega spletnega strežnika skupnosti.