Lakukan media sosial dengan cara open source dengan menghosting server Akkoma Fediverse Anda sendiri di Raspberry Pi.

Fediverse adalah jaringan server media sosial yang saling terhubung yang bergabung untuk membentuk jaringan yang koheren, tempat Anda dapat mengikuti dan berinteraksi dengan orang yang Anda minati.

Sementara jenis server Fediverse yang paling terkenal adalah Mastodon, Fediverse adalah rumah bagi lusinan jenis server. Akkoma adalah server berfitur lengkap yang mudah diterapkan di Raspberry Pi Anda. Begini caranya…

Apa itu Akkoma?

Seperti semua server Fediverse, Akkoma mengandalkan protokol ActivityPub untuk berjalan. Itu dibangun di atas basis kode Pleroma yang populer, tetapi meminjam fitur dari MissKey—seperti kemampuan untuk melihat jenis server apa yang dijalankan oleh akun pengguna lain. Akkoma sedang dalam pengembangan yang sangat aktif dan diperbarui secara berkala.

Dengan Akkoma, Anda dapat menambahkan paket ikon Anda sendiri, menerapkan berbagai rasa penurunan harga di pos, menyesuaikan apa front-end yang digunakan instance Fediverse Anda, edit posting Anda, kutip posting orang lain, dan setel karakter arbitrer membatasi.

instagram viewer

Cara Memasang Akkoma di Raspberry Pi

Saat Anda menggunakan Raspberry Pi sebagai server, pertama-tama Anda harus mengikuti panduan kami di cara mengatur Raspberry Pi Anda sebagai server web. Anda tidak perlu mengikuti langkah-langkah untuk menyiapkan MariaDB, PHP, atau Docker Compose pada saat ini.

Setelah Pi Anda siap berfungsi sebagai server, sambungkan dari jarak jauh melalui SSH, lalu menginstal rilis terbaru Docker Compose secara manual.

Kloning repositori Akkoma Git dan pindah ke dalamnya:

git klon https://akkoma.dev/AkkomaGang/akkoma.git -b stable && cd akkoma

Sekarang atur variabel lingkungan untuk Docker Compose dengan perintah berikut:

cp docker-resources/env.contoh .env 
gema"DOCKER_USER=$(id -u):$(id -g)" >> .env

Proses ini memakan waktu beberapa menit. Saat Anda kembali ke prompt perintah, Anda harus membuat wadah:

./docker-resources/build.sh

Sekali lagi, ini akan memakan waktu cukup lama. Kami mengatur waktu prosesnya sekitar tiga menit, yang memberi Anda banyak kesempatan untuk memeriksa yang lain proyek yang dihosting sendiri yang dapat Anda jalankan di Raspberry Pi, atau mungkin mainkan permainan Solitaire di terminal Linux.

Hanya karena Anda telah membuat wadah Docker tidak berarti Anda sudah siap untuk menjalankannya. Rekatkan grup perintah berikut lalu tekan Memasuki.

mkdir pgdata
./docker-resources/manage.sh mencampur deps.get
./docker-resources/manage.sh kompilasi campuran
./docker-resources/manage.sh mencampur pleroma.instance gen

Menjawab Y ketika ditanya apakah Anda ingin menginstal Hex dan rebar3. Aplikasi akan dikompilasi sekitar 12 menit lagi. Gunakan waktu ini untuk mendengarkan beberapa podcast yang akan meningkatkan kepositifan Anda.

Merasa terinspirasi dan bersemangat, Anda harus kembali ke baris perintah dan menjawab beberapa pertanyaan tentang instans Anda. Saat diminta, masukkan nama domain Anda tanpa http:// atau https:// awalan, diikuti dengan nama instans dan alamat email Anda.

Anda harus memilih apakah membiarkan mesin telusur mengindeks situs Anda (terserah Anda), dan apakah akan menyimpan konfigurasi di basis data. Memilih Ya untuk opsi ini karena akan memungkinkan Anda mengelola instance Anda melalui antarmuka web admin.

Tetapkan nama host database Anda sebagai db, konfirmasikan nama database dan pengguna sebagai akkoma, dan masukkan kata sandi database sebagai akkoma.

indeks RUM memungkinkan pencarian cepat dari database PostgreSQL, jadi ketuk y ketika ditanya apakah Anda ingin menggunakannya. Port defaultnya adalah 4000. Anda dapat membiarkannya apa adanya kecuali Anda menggunakan porta 4000 untuk perangkat lunak lain yang dihosting sendiri.

Cara mudah untuk memeriksa port yang digunakan adalah dengan membuka jendela atau tab terminal lain, dan masukkan:

sudo lsof -i -P -n | grep MENDENGAR

Tetapkan IP yang akan didengarkan oleh aplikasi 0.0.0.0, dan terima default yang masuk akal untuk pertanyaan yang tersisa.

Proses ini akan diakhiri dengan konfigurasi instance Anda yang dihasilkan ke config/generated_config.exs. Salin file ini ke lokasi baru:

cp config/generated_config.exs config/prod.secret.exs

Perintah berikut akan mengembalikan ID wadah sebagai string 64 karakter. Salin di tempat lain untuk diamankan. Sekarang gunakan perintah ini untuk mengatur database:

docker-compose run --rm akkoma psql -h db -U akkoma -f config/setup_db.psql

Ketika penampung telah berhasil disiapkan, hentikan dengan:

buruh pelabuhan berhenti container_id_you_noted_earlier

Memasuki:

./docker-resources/manage.sh mencampur ecto.migrate

...untuk menjalankan migrasi dan mengkompilasi ulang file Anda. Anda akan melihat banyak pemberitahuan bahwa "butuh waktu lebih dari 10 detik", dan prosesnya akan dengan mudah memberi Anda cukup waktu untuk membuat secangkir teh.

Instance Anda memerlukan antarmuka untuk berinteraksi dengan pengguna. Untuk saat ini, Anda hanya memerlukan ujung depan Pleroma dan ujung depan admin:

./docker-resources/manage.sh mencampur pleroma.frontend Install pleroma-fe --ref stabil
./docker-resources/manage.sh mencampur pleroma.frontend Installadmin-fe --ref stabil

Anda sekarang siap untuk membuat pengguna admin. Memasuki:

./docker-resources/manage.sh mencampur pleroma.user baru nama pengguna yang Anda inginkan email Anda@domain.tld --admin

Perintah ini akan mengembalikan ringkasan informasi yang telah Anda masukkan sejauh ini. Periksa apakah sudah benar, lalu enter y.

Tautan akan dibuat untuk Anda mengatur ulang kata sandi admin. Karena instans Anda belum berjalan dan tidak terekspos ke internet, catat tautannya untuk nanti.

Ekspos Instans Akkoma Anda ke Web

Anda harus membuat file konfigurasi Apache untuk instans Akkoma Anda:

CD /etc/apache2/sites-available
sudonanoakkoma.conf

Di file baru, rekatkan yang berikut ini:

<VirtualHost *:80>

Nama servernama-domain-Anda.tld

ProxyPass / http://127.0.0.1:4000/
ProxyPassReverse / http:/127.0.0.1:4000/
ProxyPreserveHost Aktif

VirtualHost>

Simpan dan keluar dari nano dengan Ctrl + O Kemudian Ctrl + X. Aktifkan file conf, lalu mulai ulang Apache:

sudoa2ensiteakkoma.conf
layanan sudo restart apache2

Sekarang gunakan Certbot untuk mengambil dan menerapkan sertifikat dan kunci TLS:

sudo certbot

Pilih nama domain Anda dari daftar dan tekan Enter. Mulai ulang Apache lagi dengan:

layanan sudo restart apache2

Arahkan kembali ke direktori Akkoma Anda, dan aktifkan Docker Compose dalam mode terpisah:

CD ~/akkoma
docker-compose up -d

Tunggu beberapa menit, lalu kunjungi instans Akkoma Anda menggunakan tautan atur ulang kata sandi. Pastikan Anda memilih kata sandi yang kuat untuk mengamankan instance.

Sesuaikan Instans Akkoma Anda

Sebelum Anda melakukan hal lain, Anda harus mengunjungi halaman admin web Anda di nama-domain-Anda.tld/pleroma/admin.

Ada ratusan opsi di sini, tetapi Anda dapat dengan aman mengabaikan sebagian besar untuk saat ini. Pilih Pengaturan > Paling depan, dan baca semua hal yang mungkin diubah. Anda mungkin ingin memilih ujung depan yang berbeda dari Pleroma default, atau mengatur latar belakang ke gambar yang berbeda.

Tepatnya apa yang Anda pilih untuk dilakukan di sini terserah Anda dan pengguna Anda. Untuk memberi Anda gambaran tentang apa yang tersedia, kami menyetel hal berikut pada contoh demo kami:

Kami memilih untuk mengaktifkan teks hijau pada baris yang diawali dengan > karakter; atur gaya tampilan percakapan ke pohon; kami menyetel logo situs menjadi kartun kepala penulis ini, dan mengunggah peringatan gambar NSFW bergaya.

Lebih serius lagi, Anda ingin memilih umpan default yang dilihat pengguna saat mereka masuk, dan apa yang dilihat pengunjung lihat saat mereka tidak masuk, cara panel diatur, dan rasa atau Markdown yang Anda inginkan memberikan.

Saat Anda senang dengan ujung depan, pergilah ke Pengaturan > Contoh. Tetapkan nama situs Anda, dan deskripsi, lalu lihat batasannya.

Meskipun situs media sosial arus utama memiliki batas karakter yang cukup rendah, Anda dapat mengaturnya sesuai keinginan Anda. Kami menetapkan batas 750.000 karakter untuk postingan dari instans kami sendiri, tetapi memilih untuk memposting dari instans jarak jauh hingga batas 100.000 karakter saja. Anda juga dapat menetapkan batasan untuk unggahan file dan avatar.

Pertimbangan penting lainnya mencakup apakah Anda ingin pengguna dapat mendaftar di instans Anda secara langsung, apakah Anda menginginkannya sistem khusus undangan, dan apakah Anda ingin bergabung dengan instance lain atau menjalankan situs media sosial Anda dalam isolasi yang luar biasa. Ada begitu banyak pilihan di Pengaturan, Anda harus menghabiskan beberapa jam untuk mengenal mereka.

Setelah selesai, masuk melalui URL utama Anda, dan mulai kembangkan pengikut Fediverse Anda.

Akkoma Bukan Satu-Satunya Server Fediverse

Meskipun Akkoma adalah server Fediverse favorit kami, dan ideal untuk menjalankan instans di Raspberry Pi Anda, ini jauh dari satu-satunya.

Fediverse adalah tempat yang ideal untuk membangun alun-alun kota online untuk sekelompok orang yang berpikiran sama, dan dengan bereksperimen dengan berbagai jenis, Anda dapat menemukan server yang sempurna untuk membangun server Anda sendiri secara online masyarakat.