Refactor restart script: streamline Docker compose argument handling and improve readability
This commit is contained in:
+16
-2
@@ -5,6 +5,8 @@ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)"
|
|||||||
cd "$SCRIPT_DIR"
|
cd "$SCRIPT_DIR"
|
||||||
|
|
||||||
COMPOSE_FILE="docker-compose-multitenant.yml"
|
COMPOSE_FILE="docker-compose-multitenant.yml"
|
||||||
|
ENV_FILE="$SCRIPT_DIR/.docker-build.env"
|
||||||
|
RUNTIME_COMPOSE_OVERRIDE_FILE="$SCRIPT_DIR/.docker-compose.runtime.override.yml"
|
||||||
while [[ $# -gt 0 ]]; do
|
while [[ $# -gt 0 ]]; do
|
||||||
case "$1" in
|
case "$1" in
|
||||||
--multitenant)
|
--multitenant)
|
||||||
@@ -27,11 +29,23 @@ if ! command -v docker >/dev/null 2>&1; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Rebuilding and/or restarting app container using $COMPOSE_FILE..."
|
echo "Rebuilding and/or restarting app container using $COMPOSE_FILE..."
|
||||||
|
compose_args=(-f "$COMPOSE_FILE")
|
||||||
|
if [ -f "$RUNTIME_COMPOSE_OVERRIDE_FILE" ]; then
|
||||||
|
compose_args+=( -f "$RUNTIME_COMPOSE_OVERRIDE_FILE" )
|
||||||
|
fi
|
||||||
|
if [ -f "$ENV_FILE" ]; then
|
||||||
|
compose_args+=( --env-file "$ENV_FILE" )
|
||||||
|
fi
|
||||||
|
|
||||||
if [ -f "$SCRIPT_DIR/Dockerfile" ]; then
|
if [ -f "$SCRIPT_DIR/Dockerfile" ]; then
|
||||||
docker compose -f "$COMPOSE_FILE" up -d --build app
|
docker compose "${compose_args[@]}" up -d --build app
|
||||||
else
|
else
|
||||||
echo "Warning: Dockerfile not found in $SCRIPT_DIR. Skipping build and restarting existing app container."
|
echo "Warning: Dockerfile not found in $SCRIPT_DIR. Skipping build and restarting existing app container."
|
||||||
docker compose -f "$COMPOSE_FILE" up -d --no-build app
|
if ! docker compose "${compose_args[@]}" up -d --no-build app; then
|
||||||
|
echo "Warning: app image not found or not available locally. Attempting docker compose pull app..."
|
||||||
|
docker compose "${compose_args[@]}" pull app
|
||||||
|
docker compose "${compose_args[@]}" up -d --no-build app
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Cleaning up unused Docker images..."
|
echo "Cleaning up unused Docker images..."
|
||||||
|
|||||||
Reference in New Issue
Block a user