快速部署
頁面導讀
部署入口與最小流程
- 先確認伺服器系統、Docker、Docker Compose、連接埠開放、授權憑證和安裝套件。
- 快速體驗優先使用一鍵指令碼;交付或二次開發環境建議使用 docker-compose 方式,便於替換後端 jar 和前端靜態檔案。
- 服務啟動後依容器、後端日誌、資料庫、快取、MQTT、Web 頁面和授權頁面順序驗收。
- 最終使用 MQTTX 跑通產品、設備、上報和下發鏈路,確認部署環境能支撐真實業務。
- 伺服器已開放 80、1883、8083、5061、30000-30100/tcp/udp 等業務連接埠。
- 商業版本部署前已準備授權憑證、安裝密碼,並確認部署完成後需要設定授權資訊。
- 二次開發重新部署時,先確認
/var/data下的後端 jar 套件和前端vue目錄是否為最新版本。
提示
- 商業版本部署完成後,登入系統,進入首頁需要先設定授權資訊(简体中文)才能正常使用
- 二次開發後重新部署,只需替換
/var/data目錄下對應fastbee-admin.jar套件和vue目錄下內容
一、快速部署指令碼
一鍵部署指令碼基於docker製作,需要安裝好docker和docker-compose。實際操作流程類似下面的docker-compose部署方式,整合為一個指令碼,執行一個指令完成部署。 指令如下:
sudo wget -c https://hub.fastbee.cn/resource/install.sh && bash ./install.sh
注意事項:
- 指令碼包含開源和商業版本,商業版本僅針對已授權使用者,安裝需要密碼和憑證(聯絡客服取得)
- 部署中下載檔案相對耗時,安裝中建議使用docker官方映像,指令碼自動設定映像加速,速度會比較快
- 伺服器開放對應連接埠(例如:80、1883、8083、5061、30000-30100/tcp/udp等)
二、docker-compose快速部署
使用docker-compose部署,需要伺服器先安裝docker和docker-compose
docker-compose把專案相依的應用和環境一起安裝到伺服器或本機,執行以下步驟完成安裝部署:
1.上傳檔案
先把 FastBee 儲存庫中的 docker/data/ 資料夾上傳到伺服器或本機的 /var/ 目錄下,商業版本需要重新封裝後端和前端,後端上傳到 /var/data/java/ 目錄下,替換jar檔案;前端上傳到 /var/data/nginx/vue/ 目錄下替換裡面內容。
2.開始部署
進入伺服器或本機的 /var/data/ 目錄執行:docker-compose up -d 等待執行後完成部署
3.存取系統
- 部署完成後,透過伺服器位址存取FastBee物聯網平台,預設帳號
admin admin123 - 部署中使用了emqx,可以透過18083連接埠,存取EMQX控制台,預設帳號密碼
admin admin123
提示
- 以後重新部署專案,只需替換
fastbee-admin.jar檔案和vue目錄下內容 - mysql容器初始化需要時間,如果後端報錯,可以
docker restart java重新啟動後端 - 快速部署預設帳號:
- 系統管理員:admin admin123
- mysql:root fastbee
- redis:fastbee
- emqx控制台:admin admin123
- TDengine:root taosdata
- SIP:12345678
- 資料來源監控:fastbee fastbee
4. 部署中常用指令參考
# 可先拉取服務中映像,時間取決於網路情況,可設定docker採用國內映像來源
docker-compose pull
# 建置並啟動服務中容器
docker-compose up -d
# 停止並刪除服務中容器
docker-compose down
# 建立data資料夾
mkdir /var/data
# 資料夾指派讀寫可執行權限
sudo chmod 777 /var/data5. docker映像加速設定
按照以下步驟執行指令,完成映像加速設定。docker映像來源加速位址蒐集自網路,可以依情況增加或刪除
# 1. 關閉Docker服務
sudo systemctl stop docker
# 2. 如果檔案不存在,則新建
sudo mkdir -p /etc/docker
# 3. 修改 Docker 的設定檔
sudo tee /etc/docker/daemon.json <<-EOF
{
"registry-mirrors": [
"https://mirrors.ustc.edu.cn",
"https://docker.chenby.cn",
"http://mirror.azure.cn",
"https://dockerpull.org",
"https://dockerhub.icu",
"https://hub.rat.dev",
"https://dockerproxy.com",
"https://mirror.baidubce.com",
"https://docker.m.daocloud.io",
"https://docker.nju.edu.cn",
"https://docker.mirrors.sjtug.sjtu.edu.cn",
"https://docker.rainbond.cc",
"https://mirror.ccs.tencentyun.com",
"https://registry.docker-cn.com",
"https://hub-mirror.c.163.com",
"https://docker.1ms.run",
"https://doublezonline.cloud",
"https://dislabaiot.xyz",
"https://docker.fxxk.dedyn.io",
"https://docker.unsee.tech",
"https://docker.1panel.live",
"https://docker.nastool.de",
"https://docker.zhai.cm",
"https://docker.5z5f.com",
"https://a.ussh.net",
"https://docker.udayun.com",
"https://hub.geekery.cn",
"https://noohub.ru",
"https://huecker.io",
"https://dockerhub.timeweb.cloud",
"https://0c105db5188026850f80c001def654a0.mirror.swr.myhuaweicloud.com",
"https://5tqw56kt.mirror.aliyuncs.com",
"https://docker.ckyl.me/",
"https://docker.hpcloud.cloud"
]
}
EOF
# 5. 重新啟動 Docker 服務
sudo systemctl daemon-reload
sudo systemctl start docker三、部署結果驗證
部署完成後,不建議只看頁面是否開啟。建議依「容器、後端、資料庫、快取、MQTT、業務頁面」的順序做一次完整驗收。
1. 容器狀態
cd /var/data
docker-compose ps
docker ps所有核心容器應處於執行狀態。若 java、mysql、redis、emqx 或 nginx 容器反覆重新啟動,先查看對應日誌。
docker logs -n 200 java
docker logs -n 200 mysql
docker logs -n 200 redis
docker logs -n 200 emqx
docker logs -n 200 nginx2. 後端服務
docker logs -n 300 java重點確認沒有持續出現以下錯誤:
- 資料庫連線失敗。
- Redis 認證失敗。
- 授權憑證讀取失敗。
- 連接埠佔用。
- SQL 初始化失敗。
- 時序資料庫連線失敗。
如果 MySQL 初始化較慢,後端第一次啟動失敗後可以等待 1-2 分鐘再重新啟動:
docker restart java3. Web 頁面
瀏覽器存取:
http://伺服器IP/預設帳號:
| 使用者 | 密碼 |
|---|---|
admin | admin123 |
登入後至少開啟以下頁面確認介面可用:
| 頁面 | 驗收點 |
|---|---|
| 首頁 | 統計卡片和選單正常載入 |
| 產品管理 | 清單可開啟,新增按鈕正常 |
| 設備管理 | 清單可開啟,設備詳情入口正常 |
| 系統管理 | 使用者、角色、選單頁面可開啟 |
| 授權頁面 | 商業版可上傳或查看授權資訊 |
4. MQTT 服務
EMQX 控制台位址:
http://伺服器IP:18083/預設帳號:
| 使用者 | 密碼 |
|---|---|
admin | admin123 |
進入控制台後確認監聽器正常。隨後可以依 產品到設備的完整閉環(简体中文)使用 MQTTX 建立連線。
5. 最小業務驗證
部署驗收的最終標準不是容器執行,而是平台能完成一條真實業務鏈路:
- 新建產品。
- 定義物模型。
- 發佈產品。
- 新增設備。
- MQTTX 連線平台。
- 上報屬性資料。
- 平台下發指令。
完整步驟請查看 產品到設備的完整閉環(简体中文)。
四、docker教學
docker 是一個開源的應用容器引擎,可以讓開發者封裝他們的應用以及相依套件到一個輕量級、可攜式的映像中,然後發佈到任何流行的 Linux 或 Windows 作業系統機器上,也可以實現虛擬化。容器是完全使用沙箱機制,相互之間不會有任何介面(類似 iPhone 的 app),更重要的是容器效能開銷極低。
1.安裝docker
提示
- docker映像預設從官方儲存庫取得,如果下載慢,可以設定為國內的映像儲存庫,參考教學
- 安裝桌面端,已經包含docker引擎和docker compose。伺服器一般單獨安裝docker engine和docker compose
Linux安裝docker
Windows安裝docker桌面端
- 參考教學(建議安裝WSL子系統和Windows Terminal,然後安裝Docker)
- docker安裝教學
Mac安裝docker桌面端
2.docker常用指令
docker -v # 查看docker版本,檢查是否安裝成功
docker ps # 查看執行的容器
docker ps -a # 查看所有容器
docker images # 查看本機映像
docker info # 查看docker的系統層級資訊
docker pull [image] # 拉取映像
docker run [image] # 執行容器
docker restart [container] # 重新啟動容器
docker stop [container] # 停止容器
docker stats [container] # 查看容器資源使用情況
docker inspect [container] # 查看容器中繼資料
docker logs -n 1000 [container] # 查看容器的前1000條日誌資訊
docker exec -it [container] /bin/bash # 進入執行中的容器內部
docker save nginx:latest > nginx.tar # 儲存單個映像
docker load -i nginx.tar # 從tar檔案載入映像
docker network create -d bridge fastbee-bridge # 建立一個新的網路,命名為fastbee-bridge
docker network ls # 顯示所有網路
docker network connect fastbee-bridge test # test容器加入到自訂網路
docker inspect fastbee-bridge # 查看fastbee-bridge網路裡的容器3.docker網路模式
docker中有5種網路模式,可以透過--net=***指定容器的網路模式。
bridge模式 # 預設,外界存取容器內的服務時,需要存取宿主機的 IP 以及宿主機的連接埠 port
host模式 # 容器的IP位址即為宿主機的IP位址
container模式 # 容器會共享其他容器的網路環境
overlay模式 # 跨主機通訊
none模式 # 不為容器建構任何網路環境,容器只能使用127.0.0.1的本機網路4.docker橋接器
橋接器用於各個容器間通訊,如果各個容器是單獨執行的,需要使用下面指令建立橋接器
docker network create -d bridge fastbee-bridge5.docker-compose常用指令
docker-compose -v # 查看docker-compose版本,檢查是否安裝成功
docker-compose up -d # 建置並啟動服務中容器
docker-compose down # 停止並刪除服務中容器
docker-compose ps # 列出服務中所有容器
docker-compose start # 啟動服務中的容器
docker-compose stop # 停止服務中正在執行的容器
docker-compose restart # 重新啟動服務中的容器
docker-compose logs # 查看服務中容器的輸出
docker-compose pull # 拉取服務中相依的映像
docker-compose config # 驗證並查看compose檔案設定五、關聯文件
- 產品到設備的完整閉環(简体中文)
- 運行維護(简体中文)
- 升級指南(简体中文)
- 多資料來源支援(简体中文)
- 時序資料庫(简体中文)


