本文件旨在探討如何管理各種與 WhatsApp Business API 用戶端相關聯的資料和資料庫類型。
磁碟區是用來保留 Docker 容器所產生和使用之資料的偏好機制。WhatsApp Business API 用戶端需要一個用於媒體的 Docker 磁碟區。這個磁碟區會在安裝期間執行 docker-compose
命令時自動建立。
Docker 磁碟區支援將磁碟區儲存在遠端主機或雲端供應商的系統上。您可在任何現有的資料中心檔案分享解決方案上設定媒體磁碟區。請確定所有網路應用程式和核心應用程式容器都有其讀取/寫入存取權限。若要檢視或編輯磁碟區路徑,請編輯 docker-compose.yml
檔案。
名稱 | 說明 |
---|---|
媒體磁碟區 |
|
WhatsApp Business API 用戶端可以使用 MySQL 或 PostgreSQL 來儲存資料。
您可以在安裝 WhatsApp Business API 用戶端時,在 db.env
檔案中設定下列環境變數,以配置資料庫設定。在連接資料庫時,核心應用程式和網路應用程式會使用這些環境變數。
資料庫設定 | 環境變數 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
WA_DB_NAME_PREFIX
- 可用來前綴安裝 WhatsApp Business API 用戶端時建立的所有資料庫。此參數可用來在同一資料庫主機上執行多組 WhatsApp Business API 資料庫。WA_DB_CONNECTION_IDLE_TIMEOUT
(僅受 MySQL 支援)- 在啟動核心應用程式時設定此環境變數(以毫秒為單位),即可為 MySQL 資料庫設定閒置逾時。接著,MySQL 伺服器會關閉在所設時間內閒置的任何資料庫連線。以下是管理與 WhatsApp Business API 用戶端相關聯資料庫的建議處理方式。
考量 | 建議作法 |
---|---|
使用大型資料庫進行升級 |
|
API 呼叫型的記憶體回收 |
如需詳細資訊,請參閱服務文件。 |
記錄檔輪替指令碼已封裝在核心應用程式和網路應用程式內。
網路應用程式容器中的記錄檔輪替指令碼:
/var/log/whatsapp/archive
核心應用程式容器中的記錄檔輪替指令碼:
/var/log/whatsapp/archive
在核心應用程式中,只會在每個記錄檔大小超過 15MB 時建立新的記錄檔。但不會自動移除舊的記錄檔。
建議您定期(即每日)執行下方的清除指令碼,在所有網路應用程式、核心應用程式和主節點(設定多點連線時)容器上執行記錄檔輪替。最好在主機上設定 cronjob,以在所有執行中的 WhatsApp Business API 容器上執行,並在離峰時間執行。定期叫用清除指令碼,可掌控記錄檔所使用的磁碟空間。
docker exec your-container-name /opt/whatsapp/bin/cleanup.sh