Skip to content

Linux 服務部署手冊

1. 概述

1.1 部署方案

嘟哩私有化部署基於 Docker 構建,每個服務都會打包為獨立鏡像。

在線部署時,可通過一行命令自動下載依賴並完成安裝。

離線部署時,可先下載鏡像包後再按客戶環境配置並初始化資料。

1.2 部署方式

名稱描述
本地部署客戶自行購買伺服器,並架設到企業自己的機房中。
雲部署客戶在雲計算服務提供方購買伺服器。

1.3 部署架構

名稱描述用戶規模(參考值)伺服器數量
單節點部署一般部署到一台實體伺服器上0-200 人1 台
分離式部署內外網分離:消息服務、雲盤服務、郵箱服務分開部署100-999 人3 台

2. 環境準備

2.1 伺服器配置

2.1.1 體驗版配置

用戶數CPU記憶體硬碟
100 人以內4 核12G60GB

2.1.2 正式版配置

用戶數CPU記憶體硬碟
0-20024 核+64G+1TB+

2.2 作業系統及軟體

名稱版本備註
作業系統CentOS 7.9建議使用純淨作業系統,否則可能導致端口無法正常啟動,安裝腳本異常結束。

2.3 網路環境及要求

名稱端口備註
代理端口/項目端口/服務端口33069001-901810001-100028085/1808512321-1232219001-190181. 本機防火牆需放行以上端口。
2. 如需手機等設備外網訪問,請按 TCP 進行端口映射。
3. 使用雲伺服器時,請同時放行安全組規則。
4. - 表示端口範圍,/ 表示並列端口。
5. 19001-19018 僅用於內網訪問時可不開放公網。

3. 安裝部署

採用 Docker 方式安裝部署。Linux 下執行一鍵部署命令,預計 12 分鐘完成。

3.1 Docker 安裝

嘟哩安裝腳本會自動安裝 Docker。若對 Docker 版本有特殊要求,可自行按 Docker 官方文檔安裝。

3.2 服務安裝

準備工作完成後,先檢查基礎環境。部署方式分為在線部署與離線部署。

名稱描述備註
在線部署方式通過腳本從外網下載服務端安裝包,並在腳本內自動配置與部署。1. 外網可達。
2. Yum 源可用。
3. 無端口衝突。

3.2.1 檢查安裝環境

bash
# 系統檢查
cat /etc/redhat-release

# 記憶體檢查
free -m

# CPU 檢查
cat /proc/cpuinfo | awk '/processor/' | wc -l

# 硬碟檢查
df -h

3.2.2 單節點部署

一行命令自動下載依賴並完成安裝:

bash
cd /opt/ && echo yes | /bin/bash -c "$(curl -fsSL https://download.duliduli.com/download/Linux/main/v1.0.1/install.sh )"

開始初始化系統參數:

開始部署單節點所需服務與項目:

腳本安裝過程中會自動下載服務端安裝包:

安裝包下載後,腳本會安裝 Docker 並分配 Docker 虛擬 IP,然後連接鏡像倉庫:

Docker 安裝完成後會拉取服務容器(鏡像較大,請耐心等待):

相關鏡像拉取完成後,會優先啟動服務鏡像並初始化 MySQL 資料庫:

隨後繼續拉取服務端鏡像:

安裝完成後終端會輸出嘟哩相關地址:

查看容器(docker ps):

登入管理後台後,按流程申請授權並啟用服務。

3.2.3 卸載重裝

bash
# 刪除 Docker 容器資源。
# 若存在嘟哩容器外的容器,請手動辨識,避免誤刪。
# 注意:重裝命令會清理歷史嘟哩資料,請確認後再執行。
docker stop $(docker ps | egrep -i duli | awk '{print $NF}')
docker rm -f $(docker ps -aq)
docker rmi -f $(docker images | egrep -i duli | awk '{print $3}')
docker network ls | egrep compose | awk '{print $1}' | xargs docker network rm
rm -rf /opt/dldl-installer-*
rm -f ~/quick-install.sh
clear
cd /opt/ && echo yes | /bin/bash -c "$(curl -fsSL https://download.duliduli.com/download/Linux/main/v1.0.1/install.sh )"

3.3 版本更新

3.3.1 單節點更新

bash
# 進入腳本根目錄
cd /opt/dldl-installer-v1.0.1

# 執行更新命令
sh quick-install.sh update

腳本會自動獲取官方版本號並提示,輸入目標版本後按 Enter 即可自動更新。

更新後可看到版本已升級到目標版本(示例:v1.0.2)。

3.4 服務與鏡像

安裝完成後會有以下服務:

容器名容器鏡像說明
DuliApache192.168.168.241/duliimages/duliapache代理服務
DuliMysql192.168.168.241/duliimages/dulimysql資料庫
DuliRedis192.168.168.241/duliimages/duliredis快取服務
DuliHBase192.168.168.241/duliimages/dulihbase消息資料庫
DuliGoFast192.168.168.241/duliimages/duligofast文件服務
Duli192.168.168.241/duliimages/duli入口、消息、後台、認證服務
DuliWpp192.168.168.241/duliimages/duliwpp雲盤服務
DuliMail192.168.168.241/duliimages/dulimail郵箱服務
DuliMgmt192.168.168.241/duliimages/dulimgmt工作流服務
DuliYjs192.168.168.241/duliimages/duliyjs文件協同服務

鏡像版本可能與示例不同。

3.4.1 服務管理

bash
docker [start|stop|restart] 容器名

3.4.2 服務日誌

bash
docker logs -f 容器名
類型服務名稱標識名當天日誌歷史日誌
安裝腳本安裝腳本安裝腳本/var/log/duliduli/duliduli.log-
嘟哩項目雲盤服務DuliWpplogs/DuliWpp/DuliWpp.outlogs/DuliWpp/DuliWpp.out-20240715.gz
嘟哩項目郵箱服務DuliMaillogs/DuliMail/DuliMail.outlogs/DuliMail/DuliMail.out-20240715.gz
嘟哩項目工作流服務DuliMgmtlogs/DuliMgmt/DuliMgmt.outlogs/DuliMgmt/DuliMgmt.out-20240715.gz
嘟哩項目消息服務DuliFrontlogs/DuliFront/DuliFront.outlogs/DuliFront/DuliFront.out-20240715.gz
嘟哩項目後台服務DuliBackendlogs/DuliBackend/DuliBackend.outlogs/DuliBackend/DuliBackend.out-20240715.gz
嘟哩項目入口服務DuliRoutelogs/DuliRoute/DuliRoute.loglogs/DuliRoute/7z/2024-07/2024-07-13-1.DuliRoute.gz
嘟哩項目認證服務DuliAuthlogs/DuliAuth/DuliAuth.outlogs/DuliAuth/DuliAuth.out-20240715.gz
服務代理服務DuliApachelogs/DuliApache/access.loglogs/DuliApache/log/access.log-20240714.gz
服務資料庫DuliMysqllogs/DuliMysql/logs/mysqld.log-
服務消息資料庫DuliHBaselogs/DuliHBase/hbase-root-master-hbase-server.log-
服務文件服務DuliGoFastlogs/DuliGoFast/log/fileserver.log-

3.4.3 端口資訊

類型服務端服務/項目代理端口項目端口
嘟哩代理代理服務DuliApache80/44380/443
嘟哩資料庫資料庫DuliMysql33063306
嘟哩資料庫快取服務DuliRedis7001-70067001-7006
嘟哩資料庫消息資料庫DuliZookeeper21812181
嘟哩資料庫消息資料庫DuliHadoop5001050010
嘟哩資料庫消息資料庫DuliHBase1601016010
嘟哩文件服務文件服務DuliGoFast190019001
嘟哩入口服務DuliRoute190029002
嘟哩消息服務DuliFront190039003
嘟哩後台服務DuliBackend190059005
嘟哩認證服務DuliAuth190069006
嘟哩DuliRoute SocketstreamPort Socket290029002
嘟哩DuliFront SocketwsPort Socket190099009
嘟哩DuliFront SocketnettyPort Socket190109010
嘟哩DuliFront SocketandroidPort Socket190119011
嘟哩DuliFront SocketnatcrossPort WsSocket190129012
嘟哩DuliFront SocketnatcrossTransferPort WsSocket190159015
嘟哩網盤雲盤服務ClooudDisk190149014
嘟哩網盤雲盤服務Disk Socket290149014
嘟哩網盤雲盤服務uploadPort190049004
嘟哩在線協作文件協同服務yjs122342234
嘟哩郵箱郵箱服務DuliMail190179017
嘟哩工作流工作流服務DuliMgmt190189018
嘟哩在線預覽在線預覽服務openoffice180858085

3.5 資料維護

所有服務資料映射在本機 /app 目錄(安裝目錄內)下。

目錄說明
/opt/dldl-installer-v1.0.1服務安裝根路徑
quick-install.sh服務端管理主腳本
soft服務端安裝壓縮包
scripts子腳本
conf地址、端口、資料庫配置參數
compose項目、服務 compose 啟動文件
log項目、服務日誌存放目錄
data項目、服務資料存放目錄
data/DuliDataBackupHBase、Hadoop 備份路徑
data/DuliApache/certSSL 證書路徑

3.5.1 HBase 維護

bash
docker exec -it DuliHBase sh -c "hbase shell"

示例:查看 HBase 表

bash
docker exec -it DuliHBase sh -c "echo 'list' | hbase shell"

資料備份腳本:

bash
# 快照備份 1 天資料
docker exec -it DuliHBase sh -c 'sh /opt/hbase_backup.sh SnapExport 1'

# 實體備份 1 天資料
docker exec -it DuliHBase sh -c 'sh /opt/hbase_backup.sh Export 1'

3.5.2 MySQL 維護

bash
docker exec -ti DuliMysql sh -c 'mysql -h${MysqlAddress} -uroot -P${MysqlPort}'

手動備份:

bash
docker exec -ti DuliMysql sh -c 'mysqldump -uroot -h"$MysqlAddress" -P"$MysqlPort" --all-databases -ER' > /路徑/備份文件

腳本備份:

bash
# 進入嘟哩安裝目錄
cd /opt/dldl-installer-v1.0.1

# 載入環境變數
. quick-install.sh

# 執行備份腳本
sh scripts/mysql.sh Export

4. 域名配置

4.1 HTTPS 協議變更

4.1.1 環境準備

域名(單個)證書文件私鑰文件
一級/二級域名CRT 或 PEM 格式KEY 格式

示例配置:

域名證書文件私鑰文件
example.comcert.crtcert.key

4.1.2 SSL 配置修改

修改協議前請先備份相關文件,避免配置失誤導致服務不可用。

進入安裝目錄:

bash
cd /opt/dldl-installer-v1.0.1

上傳證書:

bash
# 可使用 sftp 上傳證書,或使用 rz 命令
# 安裝 rz:
yum install -y lrzsz

# 拷貝證書到 nginx 的 cert 目錄
cp cert.crt cert.key data/DuliApache/cert/

執行 HTTPS 啟用腳本:

bash
sh scripts/enable_nginx_https.sh

選擇啟用 HTTPS(輸入 1):

輸入準備好的域名:

5. 開始體驗

5.1 訪問管理後台

text
https://example.com:9005/html/login.html

5.2 授權啟用

嘟哩官網註冊並完成企業認證後,可獲取免費版 License 文件。

購買企業版或 VIP 版後,按機器碼獲取 License 文件並導入。

導入 License 需聯網校驗,請確保可訪問 duliduli.com 域名。

6. 客戶端下載

嘟哩支持 Mac、Windows、iOS、Android 四大平台客戶端。

可從官網下載安裝包(Android 與 iOS 建議從應用商店搜尋「嘟哩」安裝)。

  1. 複製 嘟哩管理地址.txt 中的 IP 與端口(如配置域名外網訪問則填寫域名與端口),並配置到客戶端。

  1. 同意協議後點擊登入(帳號可在管理後台建立;若已對接短訊服務,也可在客戶端自行註冊)。

登入完成後即可使用嘟哩。

7. 常用命令

7.1 容器與鏡像查看

bash
docker ps
docker images

7.2 容器啟停

bash
docker start ImagesName
# 或
sh quick-install.sh start ImagesName
bash
docker stop ImagesName
# 或
sh quick-install.sh stop ImagesName
bash
docker restart ImagesName
# 或
sh quick-install.sh restart ImagesName

7.3 重載服務配置

bash
. quick-install.sh
docker-compose -f compose/docker-compose-service.yml create ServerName
# 或
sh quick-install.sh create ImagesName

7.4 配置變更示例

bash
# 1. 進入安裝根目錄
cd /opt/dldl-installer-v1.0.1

# 2. 獲取環境變數
. quick-install.sh

# 3. 編輯 compose 文件
vim compose/docker-compose-service.yml

# 4. 添加配置參數
# 例如:為代理服務增加 9004:9004 端口映射

# 5. 重載代理服務配置
docker-compose -f compose/docker-compose-service.yml create DuliApache
# 或
sh quick-install.sh create DuliApache

# 6. 重新啟動該服務
docker restart DuliApache
# 或
sh quick-install.sh restart DuliApache

7.5 進入常用服務

進入 HBase:

bash
. quick-install.sh
docker exec -it DuliHBase sh -c "hbase shell"

進入 Redis:

bash
. quick-install.sh
docker exec -it DuliRedis sh -c "redis-cli -h \"$RedisAddress\" -a \"$REDIS_PASSWORD\" -p 7001"

嘟哩帮助中心