services: # listens to mqtt packets and saves to database meshtastic-mqtt: container_name: meshtastic-mqtt image: git.arinity.org/ctmesh/map:latest depends_on: database: condition: service_healthy command: /app/docker/mqtt.sh environment: DATABASE_URL: "mysql://root:password@database:3306/meshtastic-map?connection_limit=100" MQTT_OPTS: "--mqtt-broker-url=" # add any custom mqtt.js options here # runs the web map ui meshtastic-map: container_name: meshtastic-map image: git.arinity.org/ctmesh/map:latest depends_on: database: condition: service_healthy command: /app/docker/map.sh ports: - 8080:8080/tcp environment: DATABASE_URL: "mysql://root:password@database:3306/meshtastic-map?connection_limit=100" MAP_OPTS: "" # add any custom index.js options here # runs the database to store everything from mqtt database: container_name: database image: bitnami/mariadb ports: - 3306:3306/tcp environment: MARIADB_DATABASE: "meshtastic-map" MARIADB_ROOT_PASSWORD: "password" volumes: - database_data:/bitnami/mariadb healthcheck: test: ['CMD', '/opt/bitnami/scripts/mariadb/healthcheck.sh'] interval: 15s timeout: 5s retries: 6 start_interval: 5s volumes: database_data: