Gần đây, khi khám phá trang kam - 99WIN

Một

Tương tự như việc có một blog, tôi cũng mong muốn sở hữu một mạng xã hội ngắn gọn kiểu "weibo" được tự lưu trữ (self-host). Tuy nhiên, trong suốt thời gian dài, tôi chưa tìm được một giải pháp mã nguồn mở phù hợp. Gần đây, khi khám phá trang kam.space, tôi phát hiện ra chủ đề WordPress dành riêng cho mạng xã hội bạn bè, ngay lập tức bị cuốn hút và quyết định mua để triển khai moments, giống như hình dưới đây:

!Chủ đề mạng xã hội trên WordPress

Nhưng sau đó tôi đã quyết định ngừng sử dụng nó, bởi vì tôi tìm thấy một giải pháp nhẹ nhàng hơn, dễ dùng hơn: memos.

Kết quả của memos trông như thế này, bạn ti le cuoc có thể truy cập trực tuyến tại memos.skyue.com:

!Hiệu ứng của memos

Năm ngoái, khi đang tìm kiếm một giải pháp thay thế mã nguồn mở cho các nền tảng microblogging, tôi đã biết đến dự án memos. Ban đầu, từ giao diện đến chức năng, memos gần như sao chép y nguyên flomo (cho đến bây giờ vẫn còn rất nhiều dấu vết). Tuy nhiên, vào thời điểm đó, dự án chưa hoàn thiện lắm, ví dụ như không hỗ trợ hình ảnh. Thêm vào đó, giống như flomo, memos lúc đó cũng không hỗ trợ ghi chú công khai, điều cần thiết nếu muốn sử dụng nó như một mạng xã hội công khai. Do đó, tôi đã tạo một yêu cầu tính năng trên GitHub để thêm khả năng chia sẻ memo công khai.

Hiện nay, memos đã phát triển mạnh mẽ hơn rất nhiều, thậm chí có cả ứng dụng di động và tiện ích mở rộng Chrome. Nó hỗ trợ ghi chú công khai một cách thuận tiện, hoàn toàn có thể đáp ứng nhu cầu của một mạng xã hội độc lập.

Với sự xuất hiện của memos, bộ ba self-host của tôi đã hoàn chỉnh, bao gồm:

Nhu cầu Dự án mã nguồn mở Địa chỉ tự lưu trữ
Blog dài Typecho [Địa chỉ typecho]
Weibo ngắn Memos [Địa chỉ memos]
Thu thập bookmark Shaarli [Địa chỉ shaarli]

Shaarli là một lựa chọn tuyệt vời cho việc lưu trữ bookmark tự lưu trữ. Nhiều người thường hỏi về chủ đề của Shaarli mà tôi sử dụng, tôi xin chia sẻ ở đây:

Bạn có thể tải xuống từ đường link sau: [Google Drive hoặc liên kết tương tự] (Lưu ý: Chủ đề này chỉ được kiểm tra trên phiên bản Shaarli 0.12.1, các phiên bản khác có thể không hoạt động.)

Hai

  1. Theo hướng dẫn chính thức, bảng xếp hạng ngoại hạng anh memos có thể được cài đặt trực tiếp bằng Docker với lệnh sau:
1docker run -d --name memos -p 5230:5230 -v ~/.memos/:/var/opt/memos neosmemo/memos:latest

Sau khi chạy lệnh trên, memos sẽ chạy tại địa chỉ 127.0.0.1:5230 trên máy local của bạn.

  1. Cấu hình Nginx

Cài đặt tên miền (ở đây là memos.skyue.com) trỏ tới máy chủ và sử dụng Nginx để proxy request tới 127.0.0.1:5230. Bạn có thể cấu hình Nginx như sau:

 1server {
 2  server_name memos.skyue.com;
 3  
 4  location / {
 5    proxy_pass 
 6    proxy_set_header Host $host;
 7    proxy_set_header X-Forwarded-Proto $scheme;
 8    proxy_set_header X-Real-IP $remote_addr;
 9    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
10    client_max_body_size 0;
11  }
12} [game ban ca doi thuong](/post/e03afbaf790afe1c/) 
  1. Cấu hình HTTPS cho tên miền

Nếu máy chủ của bạn đã cài đặt certbot, bạn chỉ cần thực hiện lệnh sau:

1sudo certbot --nginx -d memos.skyue.com

Trong trường hợp chưa cài đặt certbot, bạn cần thực hiện một số bước cài đặt trước.

  1. Nâng cấp memos

Theo quan sát của tôi, mỗi lần cập nhật memos thường đi kèm với một số lỗi bất ngờ. Vì vậy, tôi khuyến nghị bạn nên theo dõi phản hồi của cộng đồng người dùng trong một khoảng thời gian trước khi quyết định nâng cấp lên phiên bản mới.

Các bước nâng cấp khá đơn giản:

Bước 1: Dừng chương trình memos

1docker stop memos

Bước 2: Sao lưu dữ liệu

1cp ~/.memos/memos_prod.db ~/.memos_backup/

Bước 3: Xóa phiên bản cũ của memos

1docker rm memos 

Bước 4: Lấy phiên bản mới nhất (nếu muốn cài đặt phiên bản cụ thể, thay stable bằng số phiên bản)

1docker pull neosmemo/memos:stable

Bước 5: Cài đặt phiên bản mới nhất (nếu muốn cài đặt phiên bản cụ thể, thay stable bằng số phiên bản)

1docker run -d --name memos -p 5230:5230 -v ~/.memos/:/var/opt/memos neosmemo/memos:stable

Hy vọng hướng dẫn này giúp ích cho những ai đang tìm kiếm một giải pháp self-host hoàn chỉnh!