Files
soleprint/cfg/amar/ctrl/start.sh

54 lines
1.5 KiB
Bash
Executable File

#!/bin/bash
# Start amar room (managed app + soleprint)
#
# Usage:
# ./start.sh # Start all (foreground)
# ./start.sh -d # Start all (detached)
# ./start.sh amar # Start only amar
# ./start.sh soleprint # Start only soleprint
# ./start.sh --build # Rebuild images
set -e
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
CFG_DIR="$(dirname "$SCRIPT_DIR")"
GEN_DIR="$CFG_DIR/../../gen/amar"
SPR_DIR="$GEN_DIR/soleprint"
BUILD=""
DETACH=""
TARGET="all"
NGINX="-f $CFG_DIR/soleprint/docker-compose.nginx.yml"
for arg in "$@"; do
case $arg in
-d|--detached) DETACH="-d" ;;
--build) BUILD="--build" ;;
--no-nginx) NGINX="" ;;
amar) TARGET="amar" ;;
soleprint) TARGET="soleprint" ;;
esac
done
if [ "$TARGET" = "all" ]; then
echo "Starting amar + soleprint..."
(cd "$CFG_DIR" && docker compose up $BUILD -d)
(cd "$SPR_DIR" && docker compose -f docker-compose.yml $NGINX up $BUILD -d)
if [ -z "$DETACH" ]; then
(cd "$CFG_DIR" && docker compose logs -f) &
(cd "$SPR_DIR" && docker compose logs -f) &
wait
fi
elif [ "$TARGET" = "amar" ]; then
echo "Starting amar..."
(cd "$CFG_DIR" && docker compose up $DETACH $BUILD)
elif [ "$TARGET" = "soleprint" ]; then
echo "Starting soleprint..."
(cd "$SPR_DIR" && docker compose -f docker-compose.yml $NGINX up $DETACH $BUILD)
fi
if [ -n "$DETACH" ]; then
echo ""
docker ps --format "table {{.Names}}\t{{.Status}}\t{{.Ports}}" | grep -E "(amar|soleprint|NAMES)"
fi