feat(db): add rabittmq as mqtt stack
This commit is contained in:
@@ -1,2 +1,4 @@
|
|||||||
INFLUX_PORT=8181
|
INFLUX_PORT=8181
|
||||||
UI_PORT=8093
|
UI_PORT=8093
|
||||||
|
MQTT_USERNAME=
|
||||||
|
MQTT_PASSWORD=
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
echo "apiv3_$(openssl rand -base64 64 | tr -d '+/=')" > secrets/admin-token.txt
|
echo "apiv3_$(openssl rand -base64 64 | tr -d '+/=')" > secrets/admin-token.txt
|
||||||
```
|
```
|
||||||
|
|
||||||
2. Copy `.env.template` to `.env` and change value if necessary:
|
2. Copy `.env.template` to `.env` and change/add value if necessary:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
cp .env.template .env
|
cp .env.template .env
|
||||||
|
|||||||
@@ -60,8 +60,23 @@ services:
|
|||||||
provence || echo "Database provence already exists"
|
provence || echo "Database provence already exists"
|
||||||
'
|
'
|
||||||
|
|
||||||
|
mqtt:
|
||||||
|
image: rabbitmq:4-management-alpine
|
||||||
|
container_name: mqtt
|
||||||
|
restart: unless-stopped
|
||||||
|
ports:
|
||||||
|
- "15672:15672" # Management plugin HTTP port
|
||||||
|
- "1883:1883" # MQTT port
|
||||||
|
volumes:
|
||||||
|
- rabbitmq_data:/var/lib/rabbitmq
|
||||||
|
environment:
|
||||||
|
- RABBITMQ_DEFAULT_USER=$MQTT_USERNAME
|
||||||
|
- RABBITMQ_DEFAULT_PASS=$MQTT_PASSWORD
|
||||||
|
command: sh -c "rabbitmq-plugins enable rabbitmq_mqtt && rabbitmq-server"
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
influxdb3_data:
|
influxdb3_data:
|
||||||
|
rabbitmq_data:
|
||||||
|
|
||||||
secrets:
|
secrets:
|
||||||
admin-token:
|
admin-token:
|
||||||
|
|||||||
@@ -19,6 +19,13 @@ http:
|
|||||||
certResolver: letsencrypt
|
certResolver: letsencrypt
|
||||||
# middlewares:
|
# middlewares:
|
||||||
# - oidc-auth-pi-db@file
|
# - oidc-auth-pi-db@file
|
||||||
|
pi-mqtt-management:
|
||||||
|
rule: "Host(`mqtt.e.kb28.ch`)"
|
||||||
|
entryPoints:
|
||||||
|
- websecure
|
||||||
|
service: pi-mqtt-management
|
||||||
|
tls:
|
||||||
|
certResolver: letsencrypt
|
||||||
|
|
||||||
services:
|
services:
|
||||||
pi-db:
|
pi-db:
|
||||||
@@ -26,3 +33,24 @@ http:
|
|||||||
servers:
|
servers:
|
||||||
- url: "http://192.168.42.211:8093"
|
- url: "http://192.168.42.211:8093"
|
||||||
passHostHeader: true
|
passHostHeader: true
|
||||||
|
pi-mqtt-management:
|
||||||
|
loadBalancer:
|
||||||
|
servers:
|
||||||
|
- url: "http://192.168.42.211:15672"
|
||||||
|
passHostHeader: true
|
||||||
|
|
||||||
|
tcp:
|
||||||
|
routers:
|
||||||
|
pi-mqtt:
|
||||||
|
rule: "HostSNI(`mqtt.e.kb28.ch`)"
|
||||||
|
entryPoints:
|
||||||
|
- "mqttsecure"
|
||||||
|
service: pi-mqtt
|
||||||
|
tls:
|
||||||
|
certResolver: "letsencrypt"
|
||||||
|
|
||||||
|
services:
|
||||||
|
pi-mqtt:
|
||||||
|
loadBalancer:
|
||||||
|
servers:
|
||||||
|
- address: "192.168.42.211:8883"
|
||||||
|
|||||||
Reference in New Issue
Block a user