forked from jchomaz/Vulture
32 lines
1.0 KiB
Bash
Executable File
32 lines
1.0 KiB
Bash
Executable File
#!/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 \
|
|
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..."
|
|
# VApp (nginx) needs port 80 exposed
|
|
podman run -dt --rm --network $NETWORK_NAME --name vapp -p 8080:80 vapp:latest
|
|
|
|
echo "All containers started on network $NETWORK_NAME."
|