deploy: run mqtt workers in prod and default to EMQX on 1panel network
All checks were successful
Deploy to Production / deploy (push) Successful in 35s

This commit is contained in:
Ubuntu
2026-03-17 16:22:44 +08:00
parent f1bd0b8139
commit 8717b9c07b
2 changed files with 111 additions and 0 deletions

View File

@@ -70,6 +70,77 @@ services:
context: .
dockerfile: backend/Dockerfile
mqtt-ingestor:
image: '${DOCKER_IMAGE_BACKEND?Variable not set}:${TAG-latest}'
restart: always
networks:
- 1panel-network
depends_on:
prestart:
condition: service_completed_successfully
env_file:
- .env.production
environment:
- ENVIRONMENT=${ENVIRONMENT}
- SECRET_KEY=${SECRET_KEY?Variable not set}
- FIRST_SUPERUSER=${FIRST_SUPERUSER?Variable not set}
- FIRST_SUPERUSER_PASSWORD=${FIRST_SUPERUSER_PASSWORD?Variable not set}
- POSTGRES_SERVER=${POSTGRES_SERVER}
- POSTGRES_PORT=${POSTGRES_PORT}
- POSTGRES_DB=${POSTGRES_DB}
- POSTGRES_USER=${POSTGRES_USER?Variable not set}
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD?Variable not set}
- MQTT_HOST=${MQTT_HOST-1Panel-emqx-Rniy}
- MQTT_PORT=${MQTT_PORT-1883}
- MQTT_USERNAME=${MQTT_USERNAME}
- MQTT_PASSWORD=${MQTT_PASSWORD}
- MQTT_TOPIC_PATTERN=${MQTT_TOPIC_PATTERN-terminal/+/raw}
- MQTT_CLIENT_ID=${MQTT_CLIENT_ID-spatialhub-mqtt-ingestor}
- RAW_HOT_RETENTION_DAYS=${RAW_HOT_RETENTION_DAYS-90}
- RAW_ARCHIVE_BASE_DIR=${RAW_ARCHIVE_BASE_DIR-/data/archive/gnss}
- PARSER_BATCH_SIZE=${PARSER_BATCH_SIZE-200}
- PARSER_POLL_INTERVAL_MS=${PARSER_POLL_INTERVAL_MS-300}
command:
- python
- -m
- app.mqtt.ingestor
build:
context: .
dockerfile: backend/Dockerfile
volumes:
- mqtt-archive-data:/data/archive/gnss
mqtt-parser-worker:
image: '${DOCKER_IMAGE_BACKEND?Variable not set}:${TAG-latest}'
restart: always
networks:
- 1panel-network
depends_on:
prestart:
condition: service_completed_successfully
env_file:
- .env.production
environment:
- ENVIRONMENT=${ENVIRONMENT}
- SECRET_KEY=${SECRET_KEY?Variable not set}
- FIRST_SUPERUSER=${FIRST_SUPERUSER?Variable not set}
- FIRST_SUPERUSER_PASSWORD=${FIRST_SUPERUSER_PASSWORD?Variable not set}
- POSTGRES_SERVER=${POSTGRES_SERVER}
- POSTGRES_PORT=${POSTGRES_PORT}
- POSTGRES_DB=${POSTGRES_DB}
- POSTGRES_USER=${POSTGRES_USER?Variable not set}
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD?Variable not set}
- RAW_HOT_RETENTION_DAYS=${RAW_HOT_RETENTION_DAYS-90}
- PARSER_BATCH_SIZE=${PARSER_BATCH_SIZE-200}
- PARSER_POLL_INTERVAL_MS=${PARSER_POLL_INTERVAL_MS-300}
command:
- python
- -m
- app.mqtt.parser_worker
build:
context: .
dockerfile: backend/Dockerfile
frontend:
image: '${DOCKER_IMAGE_FRONTEND?Variable not set}:${TAG-latest}'
restart: always
@@ -87,3 +158,6 @@ services:
networks:
1panel-network:
external: true
volumes:
mqtt-archive-data: