#!/bin/bash set -e # Move to repository root cd "$(dirname "$0")/.." NETWORK_NAME="vulture-net" echo "Creating network $NETWORK_NAME..." if podman network exists $NETWORK_NAME; then echo "Network $NETWORK_NAME already exists." else podman network create $NETWORK_NAME fi echo "Starting NanoMQ..." # NanoMQ needs to expose ports for external access (e.g. VApp frontend) and be on the network for VNode podman run -dt --rm --network $NETWORK_NAME --name nanomq \ -p 1883:1883 -p 9001:9001 -p 8081:8081 -p 8083:8083 -p 8883:8883 \ -v ./VContainers/MQTT/config/nanomq.conf:/etc/nanomq.conf:Z \ docker.io/emqx/nanomq:latest --conf /etc/nanomq.conf echo "Starting VNode..." # VNode connects to nanomq via the network, no ports needed on host unless for debugging podman run -dt --rm --network $NETWORK_NAME --name vnode vnode:latest echo "Starting VApp (DEV CONFIG)..." # VApp (nginx) needs port 80 exposed podman run -dt --rm --network $NETWORK_NAME --name vapp -p 8080:80 \ -v ./VContainers/VApp/config/config_dev.js:/usr/share/nginx/html/config.js:Z \ vapp:latest echo "All containers started on network $NETWORK_NAME with DEV configuration."