Tham chiếu CLI
Trang này liệt kê mọi lệnh của CLI reputecast, tệp nhị phân duy nhất chạy máy chủ, worker và các tác vụ bảo trì.
Trong Docker image, hãy chạy lệnh bên trong container app: docker compose exec app /usr/local/bin/reputecast <command>. Cấu hình được lấy từ cùng các nguồn như reputecast serve (xem cấu hình ReputeCast), nên hãy truyền --config hoặc các biến REPUTECAST_* mà máy chủ dùng.
reputecast serve
Phần tiêu đề “reputecast serve”Chạy ứng dụng web, API, phần tiếp nhận webhook và các worker.
Theo mặc định, một tiến trình chạy mọi vai trò. Dùng --role để chia các vai trò cho nhiều tiến trình, ví dụ vài node web và ingest sau một bộ cân bằng tải cùng một worker. Không có --auto-migrate, các migration đang chờ chỉ ghi một cảnh báo vào log. Các tiến trình có vai trò web cũng chạy SMTP relay sau khi quản trị viên hệ thống bật nó.
reputecast serve [--role <roles>] [--addr <address>] [--auto-migrate] [--auto-install]| Cờ | Kiểu | Mặc định | Mô tả |
|---|---|---|---|
--role | string | — | Các vai trò cần chạy, phân tách bằng dấu phẩy: web, worker, ingest. Nếu không có cờ này, khóa cấu hình roles được áp dụng (mặc định là cả ba). |
--addr | string | — | Địa chỉ lắng nghe. Nếu không có cờ này, http.addr được áp dụng (mặc định :8080). |
--auto-migrate | bool | false | Áp dụng các migration đang chờ khi khởi động. Giá trị mặc định lấy từ REPUTECAST_AUTO_MIGRATE khi biến này được đặt. |
--auto-install | bool | false | Tạo Chủ sở hữu đầu tiên khi cơ sở dữ liệu chưa có người dùng, từ REPUTECAST_ADMIN_EMAIL, REPUTECAST_ADMIN_NAME và REPUTECAST_ADMIN_PASSWORD, rồi in thông tin đăng nhập vào log. Giá trị mặc định lấy từ REPUTECAST_AUTO_INSTALL khi biến này được đặt. |
Chạy mọi vai trò trong một tiến trình.
reputecast serveChỉ phục vụ ứng dụng web, API và webhook của nhà cung cấp; chạy các worker ở một tiến trình khác.
reputecast serve --role=web,ingestLệnh mà Docker image chạy khi khởi động.
reputecast serve --auto-migrate --auto-installreputecast worker
Phần tiêu đề “reputecast worker”Chỉ chạy các worker nền.
Tương đương serve --role=worker. Chạy việc gửi, xử lý sự kiện, đồng bộ và các tác vụ theo lịch. Lệnh này không mở cổng HTTP nào, trừ máy chủ số liệu khi đặt metrics.addr, và không áp dụng migration. Hãy chạy ít nhất một worker cho mỗi hệ thống.
reputecast workerKhởi động một tiến trình worker bên cạnh các tiến trình chạy serve --role=web,ingest.
reputecast workerreputecast migrate
Phần tiêu đề “reputecast migrate”Quản lý lược đồ cơ sở dữ liệu.
reputecast migrate <up|down|status>reputecast migrate up
Phần tiêu đề “reputecast migrate up”Áp dụng mọi migration đang chờ.
Áp dụng các migration của ReputeCast, rồi của hàng đợi tác vụ, và in ra Database is up to date.
reputecast migrate upÁp dụng migration sau khi thay binary bằng phiên bản mới.
reputecast migrate upreputecast migrate down
Phần tiêu đề “reputecast migrate down”Hoàn tác migration gần nhất.
Chỉ hoàn tác một migration. Chạy lại lệnh để hoàn tác thêm.
reputecast migrate downHoàn tác migration mới nhất.
reputecast migrate downreputecast migrate status
Phần tiêu đề “reputecast migrate status”Liệt kê các migration và cho biết đã áp dụng hay chưa.
In ra các cột VERSION, APPLIED và FILE. APPLIED cho biết ngày giờ migration đã chạy, hoặc pending.
reputecast migrate statusKiểm tra migration đang chờ trước khi nâng cấp.
reputecast migrate statusreputecast install
Phần tiêu đề “reputecast install”Chạy migration cơ sở dữ liệu và tạo Chủ sở hữu đầu tiên.
Áp dụng migration và tạo Chủ sở hữu đầu tiên: một quản trị viên hệ thống vẫn đăng nhập được bằng mật khẩu khi SSO được bắt buộc cho một tên miền. Không có --password, lệnh in ra một mật khẩu tạm thời phải được thay ở lần đăng nhập đầu tiên; lúc đó Chủ sở hữu cũng thêm khóa truy cập hoặc ứng dụng xác thực, lưu mã khôi phục, xác nhận URL công khai và tạo không gian làm việc đầu tiên. Lệnh thất bại khi cơ sở dữ liệu đã có người dùng.
reputecast install [--email <address>] [--name <name>] [--password <password>]| Cờ | Kiểu | Mặc định | Mô tả |
|---|---|---|---|
--email | string | — | Email của Chủ sở hữu. Nếu không có cờ này, REPUTECAST_ADMIN_EMAIL được dùng; cần có một trong hai. |
--name | string | — | Tên của Chủ sở hữu. Nếu không có cờ này, REPUTECAST_ADMIN_NAME được dùng. |
--password | string | — | Mật khẩu của Chủ sở hữu. Nếu không có cờ này, REPUTECAST_ADMIN_PASSWORD được dùng, và khi cả hai đều chưa đặt thì một mật khẩu tạm thời được in ra. Mật khẩu bạn đặt phải đáp ứng auth.password_min_length. |
Tạo Chủ sở hữu đầu tiên và in ra mật khẩu tạm thời.
reputecast user
Phần tiêu đề “reputecast user”Quản lý tài khoản từ máy chủ.
Hoạt động mà không cần nhà cung cấp gửi thư, nên bạn có thể khôi phục quyền truy cập trước khi thiết lập email. Mỗi thao tác được ghi vào nhật ký kiểm tra với người thực hiện là "CLI (server)".
reputecast user <command> --email <address>reputecast user reset-password
Phần tiêu đề “reputecast user reset-password”In ra liên kết đặt lại mật khẩu dùng một lần.
In ra một liên kết để người đó đặt mật khẩu mới. Liên kết chỉ dùng được một lần và hết hạn sau 15 phút; mật khẩu hiện tại của họ vẫn dùng được cho đến khi họ dùng liên kết. Tài khoản đã vô hiệu hóa bị từ chối. Với --password, mật khẩu được đặt trực tiếp và mọi phiên của tài khoản bị đăng xuất.
reputecast user reset-password --email <address> [--password <password>]| Cờ | Kiểu | Mặc định | Mô tả |
|---|---|---|---|
--email | string | — | Email của tài khoản. Bắt buộc. |
--password | string | — | Đặt trực tiếp mật khẩu này thay vì in ra liên kết đặt lại. Mật khẩu phải đáp ứng auth.password_min_length. |
In ra liên kết đặt lại để gửi riêng cho người đó.
reputecast user reset-2fa
Phần tiêu đề “reputecast user reset-2fa”Gỡ ứng dụng xác thực và mã khôi phục của một tài khoản.
Khóa truy cập được giữ nguyên. Người đó có 72 giờ để thiết lập lại xác thực hai lớp, và mọi phiên của tài khoản bị đăng xuất. Lý do là bắt buộc và được ghi vào nhật ký kiểm tra.
reputecast user reset-2fa --email <address> --reason <text>| Cờ | Kiểu | Mặc định | Mô tả |
|---|---|---|---|
--email | string | — | Email của tài khoản. Bắt buộc. |
--reason | string | — | Lý do cần đặt lại. Bắt buộc; được ghi vào nhật ký kiểm tra. |
Đặt lại xác thực hai lớp cho người bị mất điện thoại.
reputecast user make-admin
Phần tiêu đề “reputecast user make-admin”Đặt một tài khoản làm quản trị viên hệ thống.
reputecast user make-admin --email <address>| Cờ | Kiểu | Mặc định | Mô tả |
|---|---|---|---|
--email | string | — | Email của tài khoản. Bắt buộc. |
Cấp cho một tài khoản hiện có quyền truy cập Quản trị hệ thống.
reputecast user unlock
Phần tiêu đề “reputecast user unlock”Gỡ khóa đăng nhập.
reputecast user unlock --email <address>| Cờ | Kiểu | Mặc định | Mô tả |
|---|---|---|---|
--email | string | — | Email của tài khoản. Bắt buộc. |
Cho người bị khóa đăng nhập vào lại mà không phải chờ hết thời gian khóa.
reputecast seed
Phần tiêu đề “reputecast seed”Nạp dữ liệu demo để phát triển và chụp ảnh màn hình.
Áp dụng migration, rồi nạp một hệ thống mẫu. Mẫu Acme có Acme Newsletter với 48.213 người đăng ký, Amazon SES, Postmark và một máy chủ Postal đang khởi động, cùng các chiến dịch, tự động hóa, một nhóm và lịch sử nhật ký kiểm tra. Các tài khoản demo và mật khẩu của chúng được in ra ở cuối. Lệnh từ chối chạy trừ khi REPUTECAST_ENV là development.
reputecast seed [--sample <acme|northwind>] [--force]| Cờ | Kiểu | Mặc định | Mô tả |
|---|---|---|---|
--sample | string | acme | Mẫu cần nạp: acme, hoặc northwind (một agency với bảy khách hàng, nạp vào cơ sở dữ liệu trống). |
--force | bool | false | Vẫn nạp dữ liệu mẫu khi REPUTECAST_ENV không phải development. |
Nạp mẫu Acme.
REPUTECAST_ENV=development reputecast seedNạp mẫu agency vào cơ sở dữ liệu trống.
REPUTECAST_ENV=development reputecast seed --sample northwindreputecast demo
Phần tiêu đề “reputecast demo”Công cụ hỗ trợ phát triển cho bản demo Acme.
Từ chối chạy trừ khi REPUTECAST_ENV là development.
reputecast demo <command>reputecast demo send
Phần tiêu đề “reputecast demo send”Gửi một chiến dịch demo qua các nhà cung cấp mô phỏng để màn hình theo dõi trực tiếp có số liệu chạy.
Bắt đầu gửi chiến dịch có tên đã cho qua kênh truyền demo: không có gì rời khỏi máy, còn việc gửi thành công, thư trả lại, khiếu nại, lượt mở và lượt nhấp đều được mô phỏng. Worker của máy chủ đang chạy gửi chiến dịch theo thời gian thực, nên hãy khởi động máy chủ trước. Chỉ không gian làm việc có toàn bộ nhà cung cấp là nhà cung cấp demo mới gửi được.
reputecast demo send "<campaign>" [flags]| Cờ | Kiểu | Mặc định | Mô tả |
|---|---|---|---|
--scenario | string | normal | normal; outlook-complaints (người đọc Outlook lâu không tương tác gửi khiếu nại cho đến khi phần gửi đến Outlook tự động tạm dừng); hoặc postal-outage (Postal từ chối kết nối từ phút thứ 14 và phần gửi qua Postal bị tạm giữ). |
--workspace | string | acme-newsletter | Slug của không gian làm việc. |
--elapsed | duration | 0s | Bắt đầu lượt gửi từ khoảng thời gian này trước đây và gửi ngay phần đó với thời gian lùi về quá khứ, để màn hình theo dõi mở ra khi lượt gửi đang diễn ra. |
--ab-window | duration | 7m | Thời gian thử nghiệm A/B chạy trước khi bản thắng được gửi đến những người còn lại. |
--reset | bool | false | Xóa lượt gửi trước đó của chiến dịch trước, kể cả những gì lượt gửi đó đã thay đổi bên ngoài chiến dịch (thống kê nhà cung cấp, các địa chỉ bị chặn gửi do thư trả lại của nó). |
Mở màn hình theo dõi trực tiếp ở phút thứ 20 của một lượt gửi bình thường.
REPUTECAST_ENV=development reputecast demo send "Weekly DigestHiển thị một lần tự động tạm dừng do khiếu nại từ Outlook.
REPUTECAST_ENV=development reputecast demo send "Weekly DigestHiển thị sự cố gián đoạn của nhà cung cấp với một phần gửi bị tạm giữ.
REPUTECAST_ENV=development reputecast demo send "Weekly Digestreputecast openapi
Phần tiêu đề “reputecast openapi”In ra tài liệu OpenAPI 3.1 của REST API.
Mặc định in JSON có thụt lề. Không cần cơ sở dữ liệu hay cấu hình.
reputecast openapi [--yaml]| Cờ | Kiểu | Mặc định | Mô tả |
|---|---|---|---|
--yaml | bool | false | In YAML thay vì JSON. |
Lưu mô tả API để tạo client.
reputecast openapi > openapi.jsonLưu dưới dạng YAML.
reputecast openapi --yaml > openapi.yamlreputecast secrets
Phần tiêu đề “reputecast secrets”Quản lý khóa mã hóa thông tin xác thực khi lưu trữ.
reputecast secrets <command>reputecast secrets generate-key
Phần tiêu đề “reputecast secrets generate-key”In ra một khóa ngẫu nhiên mới cho REPUTECAST_SECRETS__KEY.
In ra 32 byte ngẫu nhiên ở dạng base64 chuẩn. Không cần cơ sở dữ liệu hay cấu hình.
reputecast secrets generate-keyTạo một khóa để đặt làm REPUTECAST_SECRETS__KEY thay vì dùng tệp khóa.
reputecast secrets generate-keyreputecast adapter
Phần tiêu đề “reputecast adapter”Cài adapter cộng đồng và cho ReputeCast biết chúng chạy ở đâu.
Adapter cộng đồng chạy trong tiến trình riêng và giao tiếp bằng giao thức adapter. Hãy cài adapter từ manifest của nó, chạy tiến trình của nó với khóa bí mật ký mà ReputeCast in ra, rồi kiểm tra nó. Địa chỉ adapter trên loopback hoặc mạng riêng cần providers.allow_private_networks.
reputecast adapter <command>reputecast adapter list
Phần tiêu đề “reputecast adapter list”Liệt kê các adapter cộng đồng đã cài, nơi chúng chạy và lần kiểm tra gần nhất.
In ra các cột ADAPTER, VERSION, ADDRESS, SECRET ISSUED, LAST CHECK và CONNECTED.
reputecast adapter listXem adapter nào đã được cài và mỗi adapter được bao nhiêu nhà cung cấp sử dụng.
reputecast adapter listreputecast adapter install
Phần tiêu đề “reputecast adapter install”Cài một adapter cộng đồng từ manifest.json của nó, hoặc cập nhật adapter nếu id của nó đã được cài.
Đọc manifest từ một URL https:// ở địa chỉ công khai (không đi theo chuyển hướng) hoặc từ tệp cục bộ, tối đa 256 KiB. Ở lần cài đầu tiên, ReputeCast in ra khóa bí mật ký của adapter một lần duy nhất: hãy đặt nó cho tiến trình adapter dưới dạng REPUTECAST_ADAPTER_SECRET.
reputecast adapter install <manifest-url-or-file> [--url <address>]| Cờ | Kiểu | Mặc định | Mô tả |
|---|---|---|---|
--url | string | — | Địa chỉ mà tiến trình adapter lắng nghe, ví dụ http://example-esp:4600. Nếu bỏ qua cờ này, hãy đặt sau bằng adapter set-url. |
Cài từ một manifest đã công bố.
reputecast adapter install https://raw.githubusercontent.com/you/example-esp-adapter/main/manifest.json --url http://example-esp:4600Cài từ tệp cục bộ, cho adapter chạy trên cùng máy.
reputecast adapter install ./manifest.json --url http://127.0.0.1:4600reputecast adapter set-url
Phần tiêu đề “reputecast adapter set-url”Đặt địa chỉ mà tiến trình của adapter lắng nghe.
reputecast adapter set-url <id> <url>Trỏ ReputeCast đến địa chỉ của adapter.
reputecast adapter set-url example-esp http://example-esp:4600reputecast adapter secret
Phần tiêu đề “reputecast adapter secret”Cấp khóa bí mật ký mới cho một adapter và in ra một lần duy nhất.
Khóa bí mật trước vẫn dùng được trong 24 giờ, nên bạn có thể cập nhật tiến trình adapter mà không bị gián đoạn: tiến trình chấp nhận nhiều khóa bí mật phân tách bằng dấu phẩy trong REPUTECAST_ADAPTER_SECRET.
reputecast adapter secret <id>Xoay vòng khóa bí mật ký của adapter.
reputecast adapter secret example-espreputecast adapter check
Phần tiêu đề “reputecast adapter check”Gọi thao tác kiểm tra tình trạng (health) của adapter và ghi lại kết quả.
reputecast adapter check <id>Xác nhận ReputeCast kết nối được với adapter bằng khóa bí mật ký của nó.
reputecast adapter check example-espreputecast adapter remove
Phần tiêu đề “reputecast adapter remove”Gỡ cài đặt một adapter không còn nhà cung cấp đã kết nối nào sử dụng.
reputecast adapter remove <id>Gỡ một adapter sau khi ngắt kết nối các nhà cung cấp dùng nó.
reputecast adapter remove example-espreputecast version
Phần tiêu đề “reputecast version”In ra phiên bản.
In ra phiên bản, 12 ký tự đầu của commit và phiên bản Go.
reputecast versionKiểm tra phiên bản đang được cài.
reputecast versionCờ dùng chung
Phần tiêu đề “Cờ dùng chung”Các cờ này dùng được với mọi lệnh.
| Cờ | Kiểu | Mặc định | Mô tả |
|---|---|---|---|
--config | string | — | Đường dẫn đến tệp cấu hình YAML. Nếu không có cờ này, ReputeCast đọc tệp được chỉ định trong REPUTECAST_CONFIG, nếu có. |
--database-url | string | — | URL kết nối PostgreSQL. Ghi đè database.url trong tệp cấu hình, REPUTECAST_DATABASE__URL và DATABASE_URL. |
--log-level | string | — | Mức log: debug, info, warn hoặc error. Ghi đè log.level. |
Mã thoát
Phần tiêu đề “Mã thoát”| Mã | Ý nghĩa |
|---|---|
0 |
Lệnh thành công. |
1 |
Lệnh thất bại: lỗi cơ sở dữ liệu, mạng hoặc cấu hình, cờ không xác định hoặc sai số lượng đối số. |
2 |
ReputeCast từ chối yêu cầu trước khi làm bất cứ điều gì: user reset-2fa thiếu --reason, một --password vi phạm chính sách mật khẩu, một seed --sample không xác định, hoặc seed (không có --force) hay demo send chạy ngoài REPUTECAST_ENV=development. |
Mọi lỗi được in ra standard error dưới dạng Error: <message>.
Liên quan
Phần tiêu đề “Liên quan”- Cài đặt tệp nhị phân chạy
reputecast installvàreputecast servedưới systemd. - Khôi phục quyền truy cập từ dòng lệnh hướng dẫn các lệnh
user. - Mở rộng với các vai trò web, ingest và worker giải thích
serve --rolevàworker. - Viết adapter cộng đồng dùng các lệnh
adapter. - Tham chiếu cấu hình liệt kê mọi khóa mà tệp
--configvà biến môi trường đặt.