Khởi tạo một cộng đồng

Mỗi cộng đồng hoạt động trên một máy chủ riêng: một máy chủ nhỏ lưu trữ thành viên, bài đăng và sổ cái của cộng đồng đó. Một người dân địa phương sẽ vận hành máy chủ này. Nếu thị trấn hoặc thung lũng của bạn chưa có, người đó có thể chính là bạn.

Vận hành một cộng đồng gồm những gì

Khoảng nửa giờ nếu bạn làm theo hướng dẫn. Sáu điều cần biết trước tiên:

🧰

Những việc bạn đảm trách

Bạn và các quản trị viên do bạn chỉ định là những người điều duyệt cộng đồng: các báo cáo sẽ gửi tới bạn. Dữ liệu thành viên nằm trên máy của bạn, vì vậy bạn cần sao lưu định kỳ. Bạn có thể đọc các thảo luận của doanh nghiệp và cuộc trò chuyện sự kiện; bạn không thể đọc tin nhắn trực tiếp. Bạn mời những thành viên đầu tiên, và họ sẽ mời những người tiếp theo.

⚙️

Ứng dụng cài đặt

Máy chủ của bạn đi kèm với ứng dụng cài đặt riêng trên trình duyệt. Tại đây bạn đặt tên cho cộng đồng, chỉ định chủ sở hữu và quản trị viên đăng nhập bằng khóa của chính họ, in mã QR mời, theo dõi tình trạng đĩa cứng, chọn địa chỉ web công khai hoặc đường hầm (tunnel), và hỗ trợ thành viên bị mất cả điện thoại lẫn 12 từ lấy lại quyền truy cập vào tài khoản của họ trên điện thoại mới, bằng mã dùng một lần mà bạn xác nhận trực tiếp.

🔒

Riêng tư ngay từ lần khởi động đầu tiên

Tin đăng, bản đồ, tin nhắn và số dư của cộng đồng chỉ dành riêng cho các thành viên ngay từ khoảnh khắc máy chủ bắt đầu chạy; không cần phải bật bất kỳ thiết lập nào. Người mở địa chỉ máy chủ mà không có tài khoản sẽ được chuyển hướng đến cộng đồng toàn cầu, nơi họ có thể thấy những gì ở gần mình và yêu cầu tham gia.

🌐

Liên kết với cộng đồng láng giềng

Hai cộng đồng có thể thỏa thuận liên kết để thành viên có thể giao dịch với nhau. Đậu không bao giờ rời khỏi cộng đồng gốc: mỗi cặp cộng đồng duy trì một bản đối soát liên tục về khoản nợ giữa hai bên, và mỗi bên tự đặt ra hạn mức của mình. Liên kết luôn tắt trừ khi người vận hành của cả hai bên cùng bật, và tính năng này vẫn đang trong giai đoạn đầu: tính năng đã được xây dựng cùng các màn hình trong ứng dụng web, và mới chỉ được thử nghiệm giữa hai cộng đồng thử nghiệm của chúng tôi chứ chưa bao giờ triển khai giữa các cộng đồng thực tế.

Địa chỉ của bạn

Hãy chọn địa chỉ trước khi dán và điều chỉnh dòng lệnh cuối cùng cho phù hợp. Nếu bạn đã dán lệnh, hãy nhấn Enter khi xuất hiện câu hỏi, sau đó chạy lại dòng lệnh cuối cùng: mã nhận quyền sẽ chờ điện thoại kết nối. Máy chủ thuê có địa chỉ IP công khai và mở các cổng 80, 443: thêm --ip cùng địa chỉ IP đó, ví dụ beanpool claim --ip 203.0.113.7. Máy chủ của bạn sẽ tự nhận chứng chỉ cho địa chỉ đó từ Let's Encrypt qua cổng 80, và điện thoại có thể truy cập tại https://203.0.113.7. Máy tính ở nhà hoặc không mở cổng mạng: hãy giữ nguyên dòng lệnh. Lệnh sẽ hỏi phần đầu của tên miền miễn phí (chỉ cần nhập yourtown cho tên miền yourtown.beanpool.org; nhấn Enter để bỏ qua), được truy cập thông qua đường hầm do chính máy chủ tự chạy, và chờ tối đa ba phút để bắt đầu hoạt động. Tên miền riêng của bạn: trỏ bản ghi A về địa chỉ IP của máy chủ, mở các cổng 80 và 443, rồi thêm --address https://your.domain. Tên miền vẫn được giữ nguyên khi thay đổi máy chủ, còn địa chỉ IP thì không: bạn có thể thêm tên miền sau trong Cài đặt, và các thành viên dùng địa chỉ IP vẫn tiếp tục hoạt động bình thường. Để chọn sau trong Cài đặt, thêm --no-name. Địa chỉ http:// thông thường chỉ hoạt động trong mạng nội bộ gia đình: điện thoại sẽ từ chối kết nối qua internet và quá trình nhận quyền sẽ cảnh báo bạn. Nếu dịch vụ địa chỉ của dự án BeanPool ngừng hoạt động, lệnh nhận quyền vẫn hoạt động.

Cài đặt

Sau đó, trên máy đã cài sẵn Docker, hãy dán khối lệnh duy nhất này. Khối lệnh sẽ tải tệp compose, tạo mạng mà máy chủ sử dụng, kéo hình ảnh đã xuất bản (Intel/AMD hoặc ARM64), khởi động máy chủ, chờ cho đến khi máy chủ tạo xong mã nhận quyền dùng một lần (tối đa năm phút, cho lần khởi động đầu tiên chậm trên Raspberry Pi), và tiến hành nhận quyền sở hữu. Không có cấu hình nào cần thiết trước khi khởi động.

bash — khởi tạo một cộng đồng
Một khối lệnh: tải về, tạo mạng, kéo hình ảnh, khởi động, chờ, nhận quyền git clone https://github.com/beanpool-org/beanpool.git && cd beanpool docker network create beanpool-shared docker compose pull docker compose up -d echo "Waiting for the server to make its claim code (up to 5 minutes)..." for i in $(seq 60); do docker compose exec -T beanpool-node test -f /data/claim-code.txt </dev/null 2>/dev/null && break; sleep 5; done docker compose exec -T beanpool-node test -f /data/claim-code.txt </dev/null 2>/dev/null || echo "No claim code after 5 minutes. The server's log says why: docker compose logs beanpool-node" docker compose exec beanpool-node beanpool claim

Dòng lệnh cuối cùng: beanpool claim

  1. Mã và mã QR. Lệnh sẽ hiển thị một mã nhận quyền dùng một lần và một mã QR. Quét mã QR bằng máy ảnh điện thoại, hoặc mở BeanPool, nhập địa chỉ máy chủ trong mục Tìm cộng đồng của bạn và nhấn Nhận quyền sở hữu. Điện thoại đó sẽ trở thành chủ sở hữu.
  2. Cài đặt. Mở địa chỉ của bạn (hoặc địa chỉ riêng của máy chủ) kèm theo /settings. Trình hướng dẫn thiết lập sẽ đặt tên cho cộng đồng của bạn, yêu cầu bạn thêm chủ sở hữu thứ hai và tạo ba lời mời sáng lập. Thiết lập vị trí của bạn trên bản đồ trong mục Nhận diện máy chủ (Node Identity) để mọi người ở gần có thể tìm thấy bạn.

Nếu khối lệnh thông báo No claim code after 5 minutes, hoặc beanpool claim thông báo This community has no claim code waiting, nghĩa là máy chủ chưa khởi động xong: lệnh docker compose logs beanpool-node sẽ hiển thị tiến trình. Khi nhật ký ghi nhận cộng đồng chưa có chủ sở hữu và đã có mã nhận quyền, hãy chạy lại dòng lệnh cuối cùng. Các bước đầy đủ được hướng dẫn trong phần thiết lập lần đầu của cẩm nang người vận hành.

Khuyến nghị: giữ cộng đồng của bạn tiếp tục chạy khi Docker cập nhật

Bước này nằm ở trang "Updates and health" trong cẩm nang người vận hành. Trợ lý AI thực hiện việc cài đặt luôn chạy bước này (Thiết lập máy chủ của bạn với trợ lý AI).

Xem trên GitHub →