Cách triển khai Máy chủ Fediverse Akkoma trên Raspberry Pi
Fediverse là một mạng gồm các máy chủ truyền thông xã hội được kết nối với nhau, liên kết với nhau để tạo thành một mạng nhất quán, nơi bạn có thể theo dõi và tương tác với những người mà bạn quan tâm.
Mặc dù loại máy chủ Fediverse được biết đến nhiều nhất là Mastodon, nhưng Fediverse là nơi có hàng chục loại máy chủ. Akkoma là một máy chủ đầy đủ tính năng dễ triển khai trên Raspberry Pi của bạn. Đây là cách…
Mục Lục
Akkoma là gì?
Như với tất cả các máy chủ Fediverse, Akkoma dựa vào giao thức ActivityPub để chạy. Nó được xây dựng trên cơ sở mã Pleroma phổ biến, nhưng mượn các tính năng từ MissKey—chẳng hạn như khả năng xem các loại máy chủ mà các tài khoản người dùng khác đang chạy. Akkoma đang được phát triển rất tích cực và được cập nhật thường xuyên.
Với Akkoma, bạn có thể thêm gói biểu tượng của riêng mình, sử dụng nhiều hương vị đánh dấu trong bài đăng, tùy chỉnh giao diện người dùng mà phiên bản Fediverse của bạn sử dụng, chỉnh sửa bài đăng của bạn, trích dẫn bài đăng của người khác và đặt giới hạn ký tự tùy ý.
Cách cài đặt Akkoma trên Raspberry Pi
Khi bạn đang sử dụng Raspberry Pi làm máy chủ, trước tiên bạn nên làm theo hướng dẫn của chúng tôi về cách thiết lập Raspberry Pi làm máy chủ web. Tại thời điểm này, bạn không cần làm theo các bước để thiết lập MariaDB, PHP hoặc Docker Compose.
Khi Pi của bạn đã sẵn sàng hoạt động như một máy chủ, hãy kết nối với nó từ xa thông qua SSH, sau đó cài đặt thủ công bản phát hành Docker Compose mới nhất.
Sao chép kho lưu trữ Akkoma Git và di chuyển vào đó:
git clone https:
Bây giờ hãy thiết lập các biến môi trường cho Docker Compose bằng lệnh sau:
cp docker-resources/env.example .env
echo "DOCKER_USER=$(id -u):$(id -g)" >> .env
Quá trình này mất vài phút. Khi bạn quay lại dấu nhắc lệnh, bạn sẽ cần xây dựng một vùng chứa:
./docker-resources/build.sh
Một lần nữa, điều này sẽ mất một thời gian. Chúng tôi đã tính thời gian cho quá trình này trong khoảng ba phút, điều này mang đến cho bạn nhiều cơ hội để kiểm tra các dự án tự lưu trữ khác mà bạn có thể chạy trên Raspberry Pi hoặc có thể chơi trò chơi Solitaire trong thiết bị đầu cuối Linux.
Chỉ vì bạn đã tạo bộ chứa Docker không có nghĩa là bạn đã sẵn sàng để chạy nó. Dán nhóm lệnh sau rồi nhấn Đi vào.
mkdir pgdata
./docker-resources/manage.sh mix deps.get
./docker-resources/manage.sh mix compile
./docker-resources/manage.sh mix pleroma.instance gen
Trả lời Y khi được hỏi bạn có muốn cài đặt Hex và rebar3 không. Ứng dụng sẽ biên dịch trong khoảng 12 phút nữa. Sử dụng thời gian này để nghe một số podcast sẽ tăng cường sự tích cực của bạn.
Cảm thấy được truyền cảm hứng và tiếp thêm sinh lực, bạn nên quay lại dòng lệnh và trả lời một số câu hỏi về phiên bản của mình. Khi được nhắc, hãy nhập tên miền của bạn mà không có http:// hoặc https:// tiền tố, theo sau là tên phiên bản và địa chỉ email của bạn.
Bạn sẽ cần chọn có cho phép các công cụ tìm kiếm lập chỉ mục trang web của mình hay không (tùy thuộc vào bạn) và có lưu trữ cấu hình trong cơ sở dữ liệu hay không. Chọn Đúng cho tùy chọn này vì nó sẽ cho phép bạn quản lý phiên bản của mình thông qua giao diện web quản trị.
Đặt tên máy chủ của cơ sở dữ liệu của bạn là dbxác nhận tên cơ sở dữ liệu và người dùng là akkomavà nhập mật khẩu cơ sở dữ liệu như akkoma.
chỉ số RUM cho phép tìm kiếm nhanh cơ sở dữ liệu PostgreSQL, vì vậy hãy nhấn y khi được hỏi nếu bạn muốn sử dụng chúng. Cổng mặc định là 4000. Bạn có thể để nguyên cổng này trừ khi bạn đang sử dụng cổng 4000 cho phần mềm tự lưu trữ khác.
Một cách dễ dàng để kiểm tra các cổng đang sử dụng là mở một cửa sổ hoặc tab đầu cuối khác và nhập:
sudo lsof -i -P -n | grep LISTEN
Đặt IP mà ứng dụng sẽ nghe như 0.0.0.0và chấp nhận các giá trị mặc định hợp lý cho các câu hỏi còn lại.
Quá trình sẽ kết thúc với cấu hình phiên bản của bạn được tạo thành config/generated_config.exs. Sao chép tệp này đến một vị trí mới:
cp config/generated_config.exs config/prod.secret.exs
Lệnh sau sẽ trả về ID vùng chứa dưới dạng chuỗi 64 ký tự. Sao chép nó ở nơi khác để giữ an toàn. Bây giờ sử dụng lệnh này để thiết lập cơ sở dữ liệu:
docker-compose run
Khi vùng chứa đã được thiết lập thành công, hãy dừng vùng chứa đó bằng:
docker stop container_id_you_noted_earlier
Đi vào:
./docker-resources/manage.sh mix ecto.migrate
…để chạy di chuyển và biên dịch lại các tệp của bạn. Bạn sẽ thấy nhiều thông báo rằng “việc này mất hơn 10 giây” và quá trình này sẽ dễ dàng cung cấp cho bạn đủ thời gian để pha một tách trà.
Phiên bản của bạn sẽ cần một giao diện để người dùng tương tác. Hiện tại, bạn sẽ chỉ cần giao diện người dùng Pleroma và giao diện người dùng quản trị:
./docker-resources/manage.sh mix pleroma.frontend install pleroma-fe
./docker-resources/manage.sh mix pleroma.frontend install admin-fe
Bây giờ bạn đã sẵn sàng để tạo người dùng quản trị. Đi vào:
./docker-resources/manage.sh mix pleroma.user new your-desired-username youremail@domain.tld --admin
Lệnh này sẽ trả về một bản tóm tắt thông tin bạn đã nhập cho đến nay. Kiểm tra chính xác rồi nhập y.
Một liên kết sẽ được tạo để bạn đặt lại mật khẩu quản trị viên. Vì phiên bản của bạn chưa chạy và không được kết nối với internet, hãy ghi lại liên kết để xem sau.
Đưa phiên bản Akkoma của bạn lên web
Bạn sẽ cần tạo tệp cấu hình Apache cho phiên bản Akkoma của mình:
cd /etc/apache2/sites-available
sudo nano akkoma.conf
Trong tệp mới, dán như sau:
<VirtualHost *:80> ServerName your-domain-name.tld
ProxyPass / http:
ProxyPassReverse / http:/127.0.0.1:4000/
ProxyPreserveHost On
</VirtualHost>
Lưu và thoát nano với Ctrl + O sau đó Ctrl + X. Kích hoạt tệp conf, sau đó khởi động lại Apache:
sudo a2ensite akkoma.conf
sudo service apache2 restart
Bây giờ, hãy sử dụng Certbot để tìm nạp và triển khai các khóa và chứng chỉ TLS:
sudo certbot
Chọn tên miền của bạn từ danh sách và nhấn Ephía sau. Khởi động lại Apache lần nữa với:
sudo service apache2 restart
Điều hướng trở lại thư mục Akkoma của bạn và hiển thị Docker Compose ở chế độ tách rời:
cd ~/akkoma
docker-compose up -d
Đợi vài phút, sau đó truy cập phiên bản Akkoma của bạn bằng liên kết đặt lại mật khẩu. Đảm bảo bạn chọn một mật khẩu mạnh để bảo mật phiên bản.
Tùy chỉnh phiên bản Akkoma của bạn
Trước khi bạn làm bất cứ điều gì khác, bạn nên truy cập trang quản trị web của mình tại tên miền của bạn.tld/pleroma/admin.
Có hàng trăm tùy chọn ở đây, nhưng bạn có thể yên tâm bỏ qua hầu hết chúng ngay bây giờ. Lựa chọn Cài đặt > giao diện người dùngvà đọc qua tất cả những thứ có thể thay đổi. Bạn có thể muốn chọn một giao diện người dùng khác với Pleroma mặc định hoặc đặt nền thành một hình ảnh khác.
Chính xác những gì bạn chọn làm ở đây là tùy thuộc vào bạn và người dùng của bạn. Để cung cấp cho bạn ý tưởng về những gì có sẵn, chúng tôi đặt các thông số sau trên phiên bản demo của mình:
Chúng tôi đã chọn bật văn bản màu xanh lá cây trên các dòng có tiền tố là > tính cách; đặt kiểu hiển thị hội thoại thành cây; chúng tôi đặt biểu tượng trang web thành hình hoạt hình đầu của nhà văn này và tải lên cảnh báo hình ảnh NSFW cách điệu.
Nghiêm túc hơn, bạn sẽ muốn chọn nguồn cấp dữ liệu mặc định mà người dùng nhìn thấy khi họ đăng nhập và những gì khách truy cập nhìn thấy khi họ chưa đăng nhập, cách sắp xếp các bảng và hương vị hoặc Markdown mà bạn muốn hiển thị.
Khi bạn hài lòng với giao diện người dùng, hãy chuyển đến Cài đặt > Ví dụ. Đặt tên trang web của bạn và mô tả, sau đó hãy xem các giới hạn.
Mặc dù các trang truyền thông xã hội chính thống có giới hạn ký tự khá thấp, nhưng bạn có thể đặt giới hạn ký tự của mình thành bất kỳ thứ gì bạn muốn. Chúng tôi đặt giới hạn 750.000 ký tự cho các bài đăng từ phiên bản của chính chúng tôi, nhưng đã chọn đưa các bài đăng từ các phiên bản từ xa vào giới hạn chỉ 100.000 ký tự. Bạn cũng có thể đặt giới hạn cho tệp tải lên và hình đại diện.
Các cân nhắc quan trọng khác bao gồm liệu bạn có muốn người dùng có thể đăng ký trực tiếp trên phiên bản của mình hay không, liệu bạn có muốn hệ thống chỉ dành cho người được mời hay không và liệu bạn có muốn liên kết với các phiên bản khác hay điều hành trang web truyền thông xã hội của mình một cách độc lập hay không. Có rất nhiều lựa chọn trong Cài đặtbạn nên dành vài giờ để làm quen với chúng.
Khi bạn hoàn tất, hãy đăng nhập thông qua URL chính của mình và bắt đầu tăng lượng người theo dõi Fediverse của mình.
Akkoma không phải là máy chủ Fediverse duy nhất
Mặc dù Akkoma là máy chủ Fediverse yêu thích của chúng tôi và lý tưởng để chạy một phiên bản trên Raspberry Pi của bạn, nhưng nó không phải là máy chủ duy nhất.
Fediverse là nơi lý tưởng để xây dựng quảng trường thị trấn trực tuyến cho các nhóm người có cùng chí hướng và bằng cách thử nghiệm các loại khác nhau, bạn có thể tìm thấy máy chủ hoàn hảo để xây dựng cộng đồng trực tuyến của riêng mình.