diff --git a/start-containers.sh b/start-containers.sh new file mode 100755 index 0000000..535f2cc --- /dev/null +++ b/start-containers.sh @@ -0,0 +1,36 @@ +#!/bin/bash + +if [ "$#" -lt 1 ]; then + echo "Usage: $0 ..." + exit 1 +fi + +for folder in "$@"; do + echo "Processing folder: $folder" + + # Check for folder existance. + if [ ! -d "$folder" ]; then + echo "Error: Folder '$folder' does not exist. Skipping..." + continue + fi + + # Navigate to the folder. + cd "$folder" || { echo "Failed to enter folder '$folder'. Skipping..."; continue; } + + # Take actions based on existance of Dockerfile/docker-compose.yml. + if [ -f "Dockerfile" ]; then + echo "Dockerfile found in '$folder'. Running 'docker compose build'..." + docker compose build + elif [ -f "docker-compose.yml" ]; then + echo "Dockerfile not found but docker-compose.yml exists in '$folder'. Running 'docker compose up -d'..." + docker compose up -d + else + echo "Neither Dockerfile nor docker-compose.yml found in '$folder'. Skipping..." + fi + + # Return to the original directory. + cd - >/dev/null || exit + +done + +echo "Done starting containers." diff --git a/stop-containers.sh b/stop-containers.sh new file mode 100755 index 0000000..0bfbd31 --- /dev/null +++ b/stop-containers.sh @@ -0,0 +1,35 @@ +#!/bin/bash + +if [ "$#" -lt 1 ]; then + echo "Usage: $0 ..." + exit 1 +fi + +for folder in "$@"; do + echo "Processing folder: $folder" + + # Check for folder existence. + if [ ! -d "$folder" ]; then + echo "Error: Folder '$folder' does not exist. Skipping..." + continue + fi + + # Navigate to the folder. + cd "$folder" || { echo "Failed to enter folder '$folder'. Skipping..."; continue; } + + # Check if docker-compose.yml exists. + if [ -f "docker-compose.yml" ]; then + echo "docker-compose.yml found in '$folder'. Running 'docker compose down && docker system prune -af'..." + docker compose down + docker system prune -af + else + echo "docker-compose.yml not found in '$folder'. Skipping..." + fi + + # Return to the original directory. + cd - >/dev/null || exit + +done + +echo "Done cleaning up containers." +