updated deploy scripts and locations
This commit is contained in:
44
artery/room/ctrl/build.sh
Executable file
44
artery/room/ctrl/build.sh
Executable file
@@ -0,0 +1,44 @@
|
||||
#!/bin/bash
|
||||
# Build room Docker images
|
||||
#
|
||||
# Usage:
|
||||
# ./build.sh # Build all
|
||||
# ./build.sh <service> # Build specific service
|
||||
# ./build.sh --no-cache # Force rebuild
|
||||
#
|
||||
# This is a TEMPLATE. Copy to your room's ctrl/ and customize.
|
||||
|
||||
set -e
|
||||
|
||||
cd "$(dirname "$0")/.."
|
||||
|
||||
NO_CACHE=""
|
||||
TARGET="all"
|
||||
SERVICE_DIRS=()
|
||||
|
||||
for dir in */; do
|
||||
[ -f "$dir/docker-compose.yml" ] && SERVICE_DIRS+=("${dir%/}")
|
||||
done
|
||||
|
||||
for arg in "$@"; do
|
||||
case $arg in
|
||||
--no-cache) NO_CACHE="--no-cache" ;;
|
||||
*) [[ " ${SERVICE_DIRS[*]} " =~ " ${arg} " ]] && TARGET="$arg" ;;
|
||||
esac
|
||||
done
|
||||
|
||||
build_service() {
|
||||
local svc=$1
|
||||
echo "Building $svc..."
|
||||
(cd "$svc" && docker compose build $NO_CACHE)
|
||||
}
|
||||
|
||||
if [ "$TARGET" = "all" ]; then
|
||||
for svc in "${SERVICE_DIRS[@]}"; do
|
||||
build_service "$svc"
|
||||
done
|
||||
else
|
||||
build_service "$TARGET"
|
||||
fi
|
||||
|
||||
echo "Done."
|
||||
43
artery/room/ctrl/logs.sh
Executable file
43
artery/room/ctrl/logs.sh
Executable file
@@ -0,0 +1,43 @@
|
||||
#!/bin/bash
|
||||
# View room service logs
|
||||
#
|
||||
# Usage:
|
||||
# ./logs.sh # All logs
|
||||
# ./logs.sh <service> # Service compose logs
|
||||
# ./logs.sh <container> # Specific container logs
|
||||
# ./logs.sh -f # Follow mode
|
||||
#
|
||||
# This is a TEMPLATE. Copy to your room's ctrl/ and customize.
|
||||
|
||||
set -e
|
||||
|
||||
cd "$(dirname "$0")/.."
|
||||
|
||||
FOLLOW=""
|
||||
TARGET=""
|
||||
SERVICE_DIRS=()
|
||||
|
||||
for dir in */; do
|
||||
[ -f "$dir/docker-compose.yml" ] && SERVICE_DIRS+=("${dir%/}")
|
||||
done
|
||||
|
||||
for arg in "$@"; do
|
||||
case $arg in
|
||||
-f|--follow) FOLLOW="-f" ;;
|
||||
*) TARGET="$arg" ;;
|
||||
esac
|
||||
done
|
||||
|
||||
if [ -z "$TARGET" ]; then
|
||||
# Show all logs
|
||||
for svc in "${SERVICE_DIRS[@]}"; do
|
||||
echo "=== $svc ==="
|
||||
(cd "$svc" && docker compose logs --tail=20 $FOLLOW) || true
|
||||
done
|
||||
elif [[ " ${SERVICE_DIRS[*]} " =~ " ${TARGET} " ]]; then
|
||||
# Service compose logs
|
||||
(cd "$TARGET" && docker compose logs $FOLLOW)
|
||||
else
|
||||
# Specific container
|
||||
docker logs $FOLLOW "$TARGET"
|
||||
fi
|
||||
52
artery/room/ctrl/start.sh
Executable file
52
artery/room/ctrl/start.sh
Executable file
@@ -0,0 +1,52 @@
|
||||
#!/bin/bash
|
||||
# Start room services
|
||||
#
|
||||
# Usage:
|
||||
# ./start.sh # Start all (foreground)
|
||||
# ./start.sh -d # Start all (detached)
|
||||
# ./start.sh --build # Start with rebuild
|
||||
# ./start.sh <service> # Start specific service
|
||||
#
|
||||
# This is a TEMPLATE. Copy to your room's ctrl/ and customize.
|
||||
|
||||
set -e
|
||||
|
||||
cd "$(dirname "$0")/.."
|
||||
|
||||
# Load environment
|
||||
[ -f ".env" ] && set -a && source .env && set +a
|
||||
|
||||
DETACH=""
|
||||
BUILD=""
|
||||
TARGET="all"
|
||||
SERVICE_DIRS=()
|
||||
|
||||
# Auto-detect services (dirs with docker-compose.yml)
|
||||
for dir in */; do
|
||||
[ -f "$dir/docker-compose.yml" ] && SERVICE_DIRS+=("${dir%/}")
|
||||
done
|
||||
|
||||
for arg in "$@"; do
|
||||
case $arg in
|
||||
-d|--detached) DETACH="-d" ;;
|
||||
--build) BUILD="--build" ;;
|
||||
*) [[ " ${SERVICE_DIRS[*]} " =~ " ${arg} " ]] && TARGET="$arg" ;;
|
||||
esac
|
||||
done
|
||||
|
||||
start_service() {
|
||||
local svc=$1
|
||||
echo "Starting $svc..."
|
||||
(cd "$svc" && docker compose up $DETACH $BUILD)
|
||||
[ -n "$DETACH" ] && echo " $svc started"
|
||||
}
|
||||
|
||||
if [ "$TARGET" = "all" ]; then
|
||||
for svc in "${SERVICE_DIRS[@]}"; do
|
||||
start_service "$svc"
|
||||
done
|
||||
else
|
||||
start_service "$TARGET"
|
||||
fi
|
||||
|
||||
[ -n "$DETACH" ] && docker ps --format "table {{.Names}}\t{{.Status}}\t{{.Ports}}"
|
||||
22
artery/room/ctrl/status.sh
Executable file
22
artery/room/ctrl/status.sh
Executable file
@@ -0,0 +1,22 @@
|
||||
#!/bin/bash
|
||||
# Show room service status
|
||||
#
|
||||
# Usage:
|
||||
# ./status.sh
|
||||
#
|
||||
# This is a TEMPLATE. Copy to your room's ctrl/ and customize.
|
||||
|
||||
set -e
|
||||
|
||||
cd "$(dirname "$0")/.."
|
||||
|
||||
[ -f ".env" ] && source .env
|
||||
|
||||
NAME="${DEPLOYMENT_NAME:-room}"
|
||||
|
||||
echo "=== Docker Containers ==="
|
||||
docker ps --format "table {{.Names}}\t{{.Status}}\t{{.Ports}}" | grep -E "($NAME|NAMES)" || echo "No containers running"
|
||||
|
||||
echo ""
|
||||
echo "=== Networks ==="
|
||||
docker network ls | grep -E "(${NETWORK_NAME:-$NAME}|NETWORK)" || echo "No matching networks"
|
||||
38
artery/room/ctrl/stop.sh
Executable file
38
artery/room/ctrl/stop.sh
Executable file
@@ -0,0 +1,38 @@
|
||||
#!/bin/bash
|
||||
# Stop room services
|
||||
#
|
||||
# Usage:
|
||||
# ./stop.sh # Stop all
|
||||
# ./stop.sh <service> # Stop specific service
|
||||
#
|
||||
# This is a TEMPLATE. Copy to your room's ctrl/ and customize.
|
||||
|
||||
set -e
|
||||
|
||||
cd "$(dirname "$0")/.."
|
||||
|
||||
TARGET="all"
|
||||
SERVICE_DIRS=()
|
||||
|
||||
# Auto-detect services
|
||||
for dir in */; do
|
||||
[ -f "$dir/docker-compose.yml" ] && SERVICE_DIRS+=("${dir%/}")
|
||||
done
|
||||
|
||||
[ -n "$1" ] && [[ " ${SERVICE_DIRS[*]} " =~ " $1 " ]] && TARGET="$1"
|
||||
|
||||
stop_service() {
|
||||
local svc=$1
|
||||
echo "Stopping $svc..."
|
||||
(cd "$svc" && docker compose down)
|
||||
}
|
||||
|
||||
if [ "$TARGET" = "all" ]; then
|
||||
for svc in "${SERVICE_DIRS[@]}"; do
|
||||
stop_service "$svc"
|
||||
done
|
||||
else
|
||||
stop_service "$TARGET"
|
||||
fi
|
||||
|
||||
echo "Done."
|
||||
Reference in New Issue
Block a user