Mosquitto: 4. 建立服務

本文件是使用 CLI 自動化操作指南的一部分。請在此處查看完整指南:透過 Stackhero CLI 程式化啟動 Mosquitto、取得其認證資訊並變更其設定

👋 歡迎來到 Stackhero 文件中心!

Stackhero 為您提供一個全代管的 Mosquitto MQTT cloud 環境,專為高可靠性與彈性設計:

  • 無限制的訊息吞吐量與資料傳輸,確保您的工作流程不會受到人為限制。
  • 透過您自有的外部 API,實現無限制的裝置驗證,讓裝置註冊與存取管理變得輕鬆無縫。
  • 進階 ACLs,可對主題(topics)、使用者及操作進行細緻權限控管。
  • 提供自訂網域名稱並內建HTTPS,打造安全且具品牌識別的端點(例如:https://mqtt.your-company.com)。
  • 零負擔更新:只需一鍵即可套用功能改進或安全修補。
  • 穩定的效能與強化的安全性,每個實例皆運行於專屬的私有基礎架構

加速您的 IoT 專案,同時降低營運負擔。您只需幾分鐘,即可擁有一個安全、可用於生產環境的 Mosquitto MQTT cloud hosting 實例。

以下是一個範例腳本,會建立一個 stack,將您的 Mosquitto 服務加入其中,等待服務啟動,取得其設定(包含自動產生的認證資訊),然後套用新的設定。

#!/bin/bash
set -e

export STACKHERO_TOKEN="usr-xxxxxx:your-token"

serviceStore="mosquitto"   # Mosquitto 服務商店名稱(見步驟 2)
instance="..."                # 步驟 3 選擇的實例規格
region="europe"               # 步驟 3 選擇的區域名稱

# 建立服務專用的 stack(預設使用您的主要組織;如需指定請加 --organization)
stackId=$(stackhero --format=script stack-create \
  --name="My Mosquitto stack")
echo "Stack created: ${stackId}"

# 將 Mosquitto 加入 stack(名稱會自動解析)
serviceId=$(stackhero --format=script service-add \
  --stack="My Mosquitto stack" \
  --service-store="${serviceStore}" \
  --instance="${instance}" \
  --region="${region}")
echo "Service added: mosquitto"

# 等待服務完全啟動(可能需數分鐘)
stackhero service-wait-for --service="mosquitto"

# 取得服務設定,包含自動產生的認證資訊
stackhero service-configuration-get --service="mosquitto" --format=json