Dělejte sociální média způsobem s otevřeným zdrojovým kódem hostováním vlastního serveru Akkoma Fediverse na Raspberry Pi.
Fediverse je síť vzájemně propojených serverů sociálních médií, které se sdružují a vytvářejí soudržnou síť, kde můžete sledovat a komunikovat s lidmi, kteří vás zajímají.
Zatímco nejznámějším typem serveru Fediverse je Mastodon, Fediverse je domovem desítek typů serverů. Akkoma je plně vybavený server, který lze snadno nasadit na Raspberry Pi. Zde je návod, jak…
Co je Akkoma?
Stejně jako u všech serverů Fediverse spoléhá Akkoma na provoz protokolu ActivityPub. Je postaven na populární kódové základně Pleroma, ale vypůjčuje si funkce od MissKey – například možnost vidět, na jakých typech serverů běží ostatní uživatelské účty. Akkoma je ve velmi aktivním vývoji a je pravidelně aktualizována.
S Akkoma můžete přidávat své vlastní balíčky ikon, využívat různé varianty markdownů v příspěvcích, přizpůsobovat front-end, který vaše instance Fediverse používá, upravujte své příspěvky, citujte příspěvky jiných lidí a nastavte libovolný znak omezit.
Jak nainstalovat Akkoma na Raspberry Pi
Protože používáte Raspberry Pi jako server, měli byste nejprve postupovat podle našeho průvodce na jak nastavit Raspberry Pi jako webový server. V tuto chvíli nemusíte postupovat podle kroků pro nastavení MariaDB, PHP nebo Docker Compose.
Jakmile bude váš Pi připraven fungovat jako server, připojte se k němu vzdáleně přes SSH a poté ručně nainstalovat nejnovější verzi Docker Compose.
Naklonujte úložiště Akkoma Git a přesuňte se do něj:
git klon https://akkoma.dev/AkkomaGang/akkoma.git -b stabilní && cd akkoma
Nyní nastavte proměnné prostředí pro Docker Compose pomocí následujícího příkazu:
cp docker-resources/env.example .env
echo"DOCKER_USER=$(id -u):$(id -g)" >> .env
Tento proces trvá několik minut. Když se vrátíte do příkazového řádku, budete muset vytvořit kontejner:
./docker-resources/build.sh
Opět to bude chvíli trvat. Proces jsme načasovali přibližně na tři minuty, což vám dává spoustu příležitostí podívat se na další samostatně hostované projekty, které můžete provozovat na Raspberry Pi, nebo možná zahrajte si hru Solitaire v terminálu Linux.
To, že jste vytvořili kontejner Docker, ještě neznamená, že jste připraveni jej spustit. Vložte následující skupinu příkazů a stiskněte Vstupte.
mkdir pgdata
./docker-resources/manage.sh mix deps.get
./docker-resources/manage.sh mix kompilace
./docker-resources/manage.sh mix pleroma.instance gen
Odpovědět Y na dotaz, zda chcete nainstalovat Hex a rebar3. Aplikace se bude kompilovat přibližně dalších 12 minut. Využijte tento čas k poslechu některých podcasty, které zvýší vaši pozitivitu.
Cítíte se inspirováni a povzbuzeni, měli byste se vrátit na příkazový řádek a odpovědět na některé otázky týkající se vaší instance. Až budete vyzváni, zadejte název své domény bez http:// nebo https:// prefix, za kterým následuje název vaší instance a vaše e-mailová adresa.
Budete si muset vybrat, zda necháte vyhledávače indexovat váš web (je to na vás) a zda uložíte konfiguraci do databáze. Vybrat Ano pro tuto možnost, protože vám umožní spravovat vaši instanci prostřednictvím webového rozhraní správce.
Nastavte název hostitele vaší databáze jako db, potvrďte název databáze a uživatele jako akkomaa zadejte heslo databáze jako akkoma.
RUM indexy umožňují rychlé vyhledávání v databázi PostgreSQL, tak klepněte y na otázku, zda je chcete použít. Výchozí port je 4000. Můžete to nechat tak, jak je, pokud nepoužíváte port 4000 pro jiný software s vlastním hostitelem.
Snadný způsob, jak zkontrolovat používané porty, je otevřít další okno nebo kartu terminálu a zadat:
sudo lsof -i -P -n | grep POSLOUCHEJTE
Nastavte IP, jakou bude aplikace poslouchat 0.0.0.0a u zbývajících otázek přijměte rozumná výchozí nastavení.
Proces skončí vygenerováním konfigurace vaší instance do config/generated_config.exs. Zkopírujte tento soubor do nového umístění:
cp config/generated_config.exs config/prod.secret.exs
Následující příkaz vrátí ID kontejneru jako řetězec 64 znaků. Zkopírujte ji jinam pro úschovu. Nyní použijte tento příkaz k nastavení databáze:
docker-compose run --rm akkoma psql -h db -U akkoma -f config/setup_db.psql
Když je kontejner úspěšně nastaven, zastavte jej pomocí:
přístavní dělník stop container_id_you_noted_earlier
Zadejte:
./docker-resources/manage.sh mix ecto.migrate
...pro spuštění migrací a opětovné zkompilování souborů. Uvidíte několik upozornění, že „to trvá déle než 10 s“ a proces vám snadno poskytne dostatek času na přípravu šálku čaje.
Vaše instance bude potřebovat rozhraní pro interakci uživatelů. Prozatím budete potřebovat pouze rozhraní Pleroma a rozhraní správce:
./docker-resources/manage.sh mix pleroma.frontend Nainstalujte pleroma-fe --ref stabilní
./docker-resources/manage.sh mix pleroma.frontend Nainstalujteadmin- např --ref stabilní
Nyní jste připraveni vytvořit uživatele správce. Zadejte:
./docker-resources/manage.sh mix pleroma.user Nový vaše požadované uživatelské jméno váš e-mail@doména.tld --admin
Tento příkaz vrátí souhrn informací, které jste dosud zadali. Zkontrolujte, zda je správná, a poté zadejte y.
Bude vygenerován odkaz pro resetování hesla správce. Protože vaše instance ještě neběží a není vystavena internetu, poznamenejte si odkaz na později.
Vystavte svou instanci Akkoma webu
Budete muset vytvořit konfigurační soubor Apache pro vaši instanci Akkoma:
CD /etc/apache2/sites-available
sudonanoakkoma.conf
Do nového souboru vložte následující:
<VirtualHost *:80>
ServerNamenázev-vaší domény.tld
ProxyPass / http://127.0.0.1:4000/
ProxyPassReverse / http:/127.0.0.1:4000/
ProxyPreserveHost je zapnutý
VirtualHost>
Uložte a ukončete nano pomocí Ctrl + O pak Ctrl + X. Povolte soubor conf a restartujte Apache:
sudoa2ensiteakkoma.conf
restart služby sudo apache2
Nyní použijte Certbot k načtení a nasazení certifikátů a klíčů TLS:
sudo certbot
Vyberte název své domény ze seznamu a stiskněte Enter. Znovu restartujte Apache pomocí:
restart služby sudo apache2
Přejděte zpět do svého adresáře Akkoma a vyvolejte Docker Compose v odděleném režimu:
CD ~/akkoma
docker-compose up -d
Počkejte několik minut a poté navštivte svou instanci Akkoma pomocí odkazu pro resetování hesla. Ujistěte se, že jste zvolili silné heslo pro zabezpečení instance.
Přizpůsobte si instanci Akkoma
Než uděláte cokoliv jiného, měli byste navštívit svou webovou stránku správce na adrese název-vaší-domény.tld/pleroma/admin.
Zde jsou stovky možností, ale většinu z nich můžete zatím klidně ignorovat. Vybrat Nastavení > Frontenda přečtěte si všechny věci, které je možné změnit. Možná budete chtít vybrat jiný frontend než výchozí Pleroma, nebo nastavit pozadí na jiný obrázek.
Co přesně se zde rozhodnete udělat, je na vás a vašich uživatelích. Abyste měli představu o tom, co je k dispozici, nastavili jsme v naší ukázkové instanci následující:
Rozhodli jsme se povolit zelený text na řádcích s předponou > charakter; nastavit styl zobrazení konverzace na strom; logo webu jsme nastavili na karikaturu hlavy tohoto spisovatele a nahráli jsme stylizované upozornění na obrázek NSFW.
Vážněji, budete chtít vybrat výchozí zdroj, který uživatelé uvidí, když se přihlásí, a co návštěvníci podívejte se, když nejsou přihlášeni, jak jsou panely uspořádány a jaké příchutě nebo Markdown chcete poskytnout.
Až budete spokojeni s přední částí, jděte do Nastavení > Instance. Nastavte název a popis webu a poté se podívejte na limity.
Zatímco běžné stránky sociálních médií mají poměrně nízký počet znaků, ty si můžete nastavit na co chcete. Nastavili jsme limit 750 000 znaků pro příspěvky z naší vlastní instance, ale rozhodli jsme se podřídit příspěvky ze vzdálených instancí limitu pouhých 100 000 znaků. Můžete také nastavit limity pro nahrávání souborů a avatary.
Mezi další důležité úvahy patří, zda chcete, aby se uživatelé mohli registrovat přímo ve vaší instanci, ať už chcete systém pouze pro pozvánky a zda se chcete spojit s jinými instancemi nebo provozovat své stránky sociálních médií v nádherné izolaci. Existuje tolik možností Nastavení, měli byste strávit několik hodin seznamováním se s nimi.
Až budete hotovi, přihlaste se pomocí své hlavní adresy URL a začněte rozšiřovat své sledovatele Fediverse.
Akkoma není jediný Fediverse Server
I když je Akkoma náš oblíbený server Fediverse a je ideální pro spuštění instance na vašem Raspberry Pi, není zdaleka jediný.
Fediverse je ideálním místem pro vybudování online městského náměstí pro skupiny stejně smýšlejících lidí a experimentováním s různými typy můžete najít perfektní server pro vytvoření vlastního online serveru společenství.