Ứng dụng có sẵn
Ảnh Docker của Antimatter đi kèm một bộ ứng dụng (gọi là plugin trong Bảng điều khiển Hệ thống). Trang này liệt kê chúng, cho biết ứng dụng nào được bật sau khi cài đặt, và nêu bật các cài đặt mà quản trị viên cần thiết lập cho từng ứng dụng.
Các ứng dụng có sẵn
Các ứng dụng được liệt kê dưới dạng Các plugin trong Bảng điều khiển Hệ thống. Chúng nằm trong image (tại /antimatter/prepackaged_plugins), được ký bằng khóa ký ứng dụng của Antimatter, do đó có thể cài đặt mà không cần kết nối Internet.
Tệp lưu trữ bản phát hành và các gói .deb và .rpm bao gồm ít ứng dụng hơn: xem Ứng dụng trong các gói và tệp lưu trữ.
| Ứng dụng | ID ứng dụng | Ảnh | Trạng thái sau khi cài đặt |
|---|---|---|---|
| Trợ lý (AI) | mattermost-ai | cả hai | có |
| Cuộc gọi | com.mattermost.calls | cả hai | có |
| Kanban | focalboard | cả hai | có |
| Playbook | playbooks | cả hai | có |
| GitHub | github | cả hai | không |
| GitLab | com.github.manland.mattermost-plugin-gitlab | cả hai | không |
| Jira | jira | cả hai | không |
| Chỉ số đo lường | com.mattermost.mattermost-plugin-metrics | cả hai | không |
| Kênh thoại | com.antimatterchat.voice-channels | antimatter-next | có |
| Bình chọn | com.antimatterchat.polls | antimatter-next | có |
| Ghi chú | com.antimatterchat.notes | antimatter-next | có |
| Bảng trắng | com.antimatterchat.whiteboard | antimatter-next | có |
| Thư | com.antimatterchat.mail | antimatter-next | có |
| Lịch | com.antimatterchat.calendar | antimatter-next | có |
| GIF | com.antimatterchat.gifs | antimatter-next | có |
| Meme | memes | antimatter-next | không |
| Việc cần làm | com.mattermost.plugin-todo | antimatter-next | không |
Các ứng dụng được bật mặc định sẽ được cài đặt mỗi lần khởi động nếu chưa có, hoặc được nâng cấp nếu ảnh có phiên bản mới hơn. Nếu bạn tắt một ứng dụng, nó sẽ ở trạng thái tắt: giá trị mặc định chỉ áp dụng cho các ứng dụng mà cấu hình chưa đề cập. Các ứng dụng giữ nguyên ID của Mattermost (Trợ lý, Cuộc gọi, Kanban, Playbook và các ứng dụng tích hợp) là các bản build do chính Antimatter phát triển.
Bật, tắt và cấu hình ứng dụng
Chuyển đến Bảng điều khiển Hệ thống › Các plugin › Quản lý Plugin. Trong mục Plugin đã cài đặt, mỗi ứng dụng có tùy chọn Bật hoặc Tắt, Cài đặt Tài khoản và Xóa, đồng thời hiển thị trạng thái của nó (Đang chạy, Không chạy, Không thể khởi động…). Mỗi ứng dụng có cài đặt cũng có trang riêng của nó dưới Bảng điều khiển Hệ thống › Các plugin.
Các ứng dụng tích hợp bị tắt theo mặc định được cài đặt từ bản sao của chính hình ảnh: nhấp vào ảnh đại diện của bạn ở đầu thanh ứng dụng và chọn Chợ ứng dụng (trong giao diện cổ điển, nó nằm trong menu sản phẩm), tìm ứng dụng và nhấp vào Cài đặt, sau đó bật nó trong Quản lý Plugin. Từ dòng lệnh:
docker compose exec antimatter amctl --local plugin marketplace install github
docker compose exec antimatter amctl --local plugin enable github
Các lệnh khác: amctl plugin list, amctl plugin disable <id>, amctl plugin delete <id>.
Bật ứng dụng thông qua cấu hình
Các ứng dụng đang bật được xác định bởi cài đặt PluginSettings.PluginStates, một bản đồ các id ứng dụng. Bạn có thể hợp nhất các mục vào đó bằng amctl; với Bật các plugin tự động đóng gói sẵn được bật (mặc định), một ứng dụng đóng gói sẵn đã bật sẽ được cài đặt vào lần khởi động tiếp theo:
docker compose exec -T antimatter amctl --local config patch /dev/stdin <<'EOF'
{"PluginSettings": {"PluginStates": {"com.mattermost.plugin-todo": {"Enable": true}}}}
EOF
docker compose restart antimatter
Đây cũng là cách để cài đặt Việc cần làm, ứng dụng không được cung cấp trong hộp thoại Marketplace. Biến AM_PLUGINSETTINGS_PLUGINSTATES cũng hoạt động, nhưng nó thay thế toàn bộ bản đồ: hãy liệt kê mọi ứng dụng bạn muốn bật.
Cài đặt ứng dụng
Cài đặt ứng dụng được lưu dưới PluginSettings.Plugins.<app id>, với các khóa ở dạng chữ thường. Bạn có thể thay đổi chúng trong trang Bảng điều khiển Hệ thống của ứng dụng, hoặc bằng lệnh amctl config patch như được mô tả trong Cấu hình. AM_PLUGINSETTINGS_PLUGINS thay thế cài đặt của mọi ứng dụng cùng lúc và khóa tất cả chúng, vì vậy hãy tránh sử dụng biến này.
GIF
Ứng dụng GIFs thêm một tab GIF và sticker vào bộ chọn biểu tượng cảm xúc, được hỗ trợ bởi dịch vụ GIF của Antimatter (gifs-server), giao tiếp qua API của Tenor. File compose của trang web chạy dịch vụ và cấu hình ứng dụng thông qua các biến. Cài đặt của nó, trong Bảng điều khiển Hệ thống › Các plugin › GIF:
| Cài đặt | Biến (giá trị dự phòng) | Mặc định | Chức năng |
|---|---|---|---|
| URL dịch vụ GIF | AM_GIFS_SERVICE_URL | trống | URL gốc của API dịch vụ, ví dụ http://gifs:8080/v2. GIF sẽ bị tắt khi trường này trống. |
| Khóa API | AM_GIFS_API_KEY | trống | Một trong các AM_GIFS_API_KEYS của dịch vụ. |
| Khóa tải lên | AM_GIFS_UPLOAD_KEY | trống | Một trong các AM_GIFS_UPLOAD_KEYS của dịch vụ. Cho phép người dùng thêm GIF và sticker từ trình chọn, và xóa những tệp đã được thêm theo cách này. Để trống sẽ tắt tính năng tải lên. |
| Ai có thể thêm GIF và sticker | Quản trị viên hệ thống | Quản trị viên hệ thống, hoặc Mọi người. Khách không bao giờ có thể, giống như với biểu tượng cảm xúc tùy chỉnh. Những gì mọi người thêm sẽ khả dụng cho tất cả; người đã thêm và quản trị viên hệ thống có thể xóa nó. | |
| Bật sticker | on | Hiển thị tab sticker. | |
| Lọc nội dung | medium | high, medium, low hoặc off. | |
| Phân phối phương tiện thông qua Antimatter | on | Trình duyệt tải GIF từ Antimatter, và Antimatter sẽ lấy chúng từ dịch vụ. Hãy giữ tùy chọn này bật khi dịch vụ chỉ chạy trên mạng nội bộ. | |
| URL phương tiện | /media/ của dịch vụ | Vị trí lưu trữ phương tiện khi phân phối trực tiếp. | |
| Kích thước bộ nhớ đệm (MB) | 64 MB | Bộ nhớ đệm của ứng dụng. |
Đối với ứng dụng này, các biến chỉ là giá trị dự phòng: giá trị được đặt trong Bảng điều khiển Hệ thống sẽ có ưu tiên cao hơn. Nếu trình chọn GIF vẫn trống, hãy kiểm tra URL dịch vụ và khóa API trên trang đó.
Trong khi ứng dụng GIFs được cấu hình, tab của nó sẽ thay thế bộ chọn Giphy tích hợp sẵn (Bảng điều khiển Hệ thống › Tích Hợp › GIF (Beta) › Bật Bộ chọn GIF, ServiceSettings.EnableGifPicker).
Dịch vụ GIF
Dịch vụ lưu trữ mọi thứ trong thư mục dữ liệu của nó (/data, volume gifs): một chỉ mục tìm kiếm và các tệp phương tiện. Các biến chính của nó:
| Biến | Mặc định | Chức năng |
|---|---|---|
AM_GIFS_API_KEYS | none | Các khóa API phân tách bằng dấu phẩy. Nếu không có khóa, API sẽ mở cho bất kỳ ai truy cập được. Sử dụng nhiều khóa cho phép bạn xoay vòng chúng. |
AM_GIFS_UPLOAD_KEYS | none | Các khóa được phép tải lên, và xóa những gì đã được tải lên. Không có tải lên nếu không có khóa. |
AM_GIFS_RATE_LIMIT | 20 | Số yêu cầu mỗi giây cho mỗi client (khóa API và địa chỉ); 0 để tắt. Tệp compose đặt giá trị là 0, vì tất cả các yêu cầu của Antimatter chia sẻ một khóa và một địa chỉ. |
AM_GIFS_LISTEN | :8080 | Địa chỉ lắng nghe. |
AM_GIFS_PUBLIC_URL | from requests | URL bên ngoài, nếu bạn công khai dịch vụ. |
AM_GIFS_TRUST_PROXY | false | Tin cậy các tiêu đề X-Forwarded-*, chỉ khi đặt sau proxy. |
AM_GIFS_UPLOAD_MAX_MB | 16 | Tệp tải lên lớn nhất. |
Để tải hàng loạt GIF của riêng bạn, hãy nhập chúng bằng tệp danh sách (manifest) từ một thư mục được gắn vào một container dùng một lần:
docker compose run --rm -v "$PWD/my-gifs:/import:ro" gifs import -manifest /import/manifest.json
Để nhập lại các sticker khởi đầu sau khi nâng cấp: docker compose run --rm gifs stickers. Định dạng manifest và các lệnh khác nằm trong README của gifs-server.
Thư và Lịch
Thư và Lịch kết nối mỗi người với hộp thư riêng (IMAP và SMTP) và lịch riêng (CalDAV). Người dùng nhập máy chủ và mật khẩu của họ trong ứng dụng; mật khẩu được lưu trữ dưới dạng mã hóa. Bạn không cấu hình máy chủ thư hoặc lịch cho họ, nhưng bạn quyết định những gì họ có thể kết nối đến:
| Ứng dụng | Cài đặt | Mặc định | Chức năng |
|---|---|---|---|
| Thư, Lịch | Cho phép máy chủ thư trên mạng riêng tư, Cho phép máy chủ lịch trên mạng riêng tư (AllowPrivateNetworks) | Tắt | Khi tắt, máy chủ từ chối kết nối đến các địa chỉ vòng lặp (loopback), riêng tư và liên kết cục bộ (link-local), do đó các ứng dụng không thể được sử dụng để truy cập mạng nội bộ của bạn. Bật tùy chọn này nếu máy chủ thư hoặc lịch của bạn nằm trên địa chỉ riêng tư. |
| Thư, Lịch | Cho phép kết nối không mã hóa (AllowInsecureConnections) | Tắt | Khi tắt, các kết nối phải sử dụng TLS (Thư: TLS hoặc STARTTLS; Lịch: HTTPS). |
| Thư | Khoảng thời gian kiểm tra chưa đọc (phút) (UnreadCheckMinutes) | 2 phút | Tần suất kiểm tra số lượng tin nhắn chưa đọc khi máy chủ thư không thể đẩy chúng. |
| Thư | Kích thước tin nhắn tối đa (MB) (MaxMessageSizeMB) | 25 MB | Giới hạn kích thước của tin nhắn được gửi và đọc. |
| Lịch | Gửi lời nhắc (EnableReminders) | on | Bot Lịch gửi một tin nhắn trực tiếp trước sự kiện (10 phút trước, đối với các sự kiện không có báo thức riêng). |
Để cho phép người dùng đăng nhập vào hộp thư Gmail hoặc Microsoft 365 bằng tài khoản của họ thay vì mật khẩu, hãy tạo một client OAuth và điền vào các trường Google hoặc Microsoft của ứng dụng Thư:
- Google: một client OAuth Web với Gmail API và phạm vi
https://mail.google.com/. - Microsoft: một ứng dụng Entra ID với các quyền ủy quyền
IMAP.AccessAsUser.All,SMTP.Send,offline_access,openid,emailvàprofile. Tenant mặc định làcommon. - Trong cả hai trường hợp, URI chuyển hướng là
https://chat.example.com/plugins/com.antimatterchat.mail/oauth/callback(URL trang web của bạn).
Kanban, Ghi chú, Bảng trắng, Bình chọn và Playbook
- Kanban (
focalboard) mở trong bảng bên cạnh cuộc trò chuyện, giống như Playbooks. Các liên kết cũ đến các trang/kanban/…và/boards/…mở cùng một bảng hoặc thẻ trong một cộng đồng. Cài đặt duy nhất của nó, Enable Publicly-Shared Boards (EnablePublicSharedBoards, tắt), cho phép người chỉnh sửa bảng chia sẻ bảng với bất kỳ ai có liên kết, mà không cần đăng nhập. - Notes và Polls không có cài đặt nào.
- Whiteboard: quản trị viên hệ thống có thể tải lên các thư viện hình dạng (tệp Excalidraw
.excalidrawlib, mỗi tệp tối đa 5 MB) cho toàn bộ máy chủ trong trang cài đặt của nó. Quản trị viên cộng đồng sẽ quản lý các thư viện của cộng đồng riêng. - Playbooks mở trong bảng bên. Các liên kết cũ đến các trang
/playbooks/…mở cùng một run hoặc playbook trong một cộng đồng. Nó có một vài cài đặt, chủ yếu là các tính năng thử nghiệm; các giá trị mặc định phù hợp với hầu hết các máy chủ. - Memes: Ai có thể thêm mẫu meme: Mọi người (mặc định), Quản trị viên hệ thống, hoặc Không ai (tắt mẫu tùy chỉnh), ngăn các mẫu mới trong khi những mẫu đã được thêm vẫn khả dụng. Khách không bao giờ thêm mẫu. Người đã thêm mẫu và quản trị viên hệ thống có thể xóa nó.
- Todo không có cài đặt máy chủ.
GitHub, GitLab và Jira
Các ứng dụng này kết nối Antimatter với nền tảng lưu trữ mã nguồn và hệ thống theo dõi sự cố của bạn. Mỗi ứng dụng cần một ứng dụng OAuth ở phía bên kia và một webhook trỏ ngược lại Antimatter. Bật ứng dụng, sau đó chạy lệnh thiết lập của nó trong bất kỳ kênh nào, lệnh này sẽ hướng dẫn bạn từng bước: /github setup, /gitlab setup hoặc /jira setup.
| Ứng dụng | URL chuyển hướng OAuth | URL Webhook |
|---|---|---|
| GitHub | https://chat.example.com/plugins/github/oauth/complete | https://chat.example.com/plugins/github/webhook |
| GitLab | https://chat.example.com/plugins/com.github.manland.mattermost-plugin-gitlab/oauth/complete | https://chat.example.com/plugins/com.github.manland.mattermost-plugin-gitlab/webhook |
| Jira | /jira instance install server <url> hoặc /jira instance install cloud-oauth <url>; /jira webhook sẽ in ra các URL webhook. | |
Các ứng dụng GitHub và GitLab sẽ tạo bí mật webhook và khóa mã hóa khi lưu lần đầu. Ứng dụng GitHub có thể bị giới hạn cho các tổ chức (GithubOrg) và ứng dụng GitLab cho một nhóm (GitlabGroup); đối với GitHub Enterprise hoặc GitLab tự lưu trữ, hãy đặt URL cơ sở của nó.
Chỉ số đo lường
Ứng dụng Metrics thu thập các chỉ số hiệu năng của máy chủ vào một cơ sở dữ liệu chuỗi thời gian nhỏ bên trong Antimatter, cho phép bạn tải chúng xuống hoặc bao gồm chúng trong gói hỗ trợ mà không cần chạy Prometheus. Khi khởi động, nó sẽ bật điểm cuối chỉ số của máy chủ (MetricsSettings.Enable). Xem Operations.
Cài đặt các ứng dụng khác
Antimatter chạy các ứng dụng Mattermost (plugin). Có ba cách để thêm một ứng dụng:
- Từ thị trường từ xa. Bật Thị trường Từ xa (
PluginSettings.EnableRemoteMarketplace) mặc định là tắt, và URL thị trường (PluginSettings.MarketplaceURL) để trống: Antimatter không sử dụng thị trường của Mattermost và sẽ bỏ qua địa chỉ của nó nếu cấu hình từ Mattermost vẫn còn chứa nó. Để liệt kê các ứng dụng của một máy chủ thị trường mà bạn tin tưởng, hãy bật cài đặt này và đặt URL của nó. Các bản build từ thị trường đó của các ứng dụng mà Antimatter cung cấp (Calls, Playbooks, Kanban và các ứng dụng khác) sẽ bị ẩn, do đó chúng không thể thay thế các ứng dụng của Antimatter: Cho phép bản build từ Marketplace thay thế Plugin của Antimatter (PluginSettings.AllowMarketplaceToReplaceAntimatterPlugins) mặc định là tắt. - Bằng cách tải lên một gói (
.tar.gz). Chức năng tải lên bị tắt theo mặc định và không có công tắc trong Bảng điều khiển Hệ thống: hãy đặtAM_PLUGINSETTINGS_ENABLEUPLOADS=true, sau đó sử dụng Tải lên Plugin trong Quản lý Plugin, hoặc chạyamctl --local plugin add app.tar.gz. - Từ một URL:
amctl plugin install-url <url>, cũng yêu cầu bật tải lên.
Antimatter kiểm tra chữ ký của ứng dụng bằng cách đối chiếu với các khóa mà nó tin tưởng: khóa của Antimatter, khóa mà Mattermost, Inc. dùng để ký cho các ứng dụng đã phát hành (để bạn có thể tự tải và cài đặt ứng dụng của Mattermost), và bất kỳ khóa nào bạn thêm vào PluginSettings.SignaturePublicKeyFiles. Khi bật Yêu cầu Chữ ký của Plugin (PluginSettings.RequirePluginSignature, tắt theo mặc định), các ứng dụng không có chữ ký sẽ bị từ chối và chức năng tải lên sẽ bị vô hiệu hóa.
Một số ứng dụng được tạo cho các phiên bản trả phí của Mattermost sẽ tự kiểm tra giấy phép Mattermost và từ chối chạy; Antimatter không giả vờ có giấy phép cho chúng.