Init
This commit is contained in:
Executable
+55
@@ -0,0 +1,55 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
bundle_dir="$(cd "$script_dir/.." && pwd)"
|
||||
images_dir="$bundle_dir/images"
|
||||
|
||||
compose() {
|
||||
if docker compose version >/dev/null 2>&1; then
|
||||
docker compose "$@"
|
||||
elif command -v docker-compose >/dev/null 2>&1; then
|
||||
docker-compose "$@"
|
||||
else
|
||||
echo "docker compose or docker-compose is required." >&2
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
ensure_env_file() {
|
||||
if [[ ! -f "$bundle_dir/.env" && -f "$bundle_dir/.env.example" ]]; then
|
||||
cp "$bundle_dir/.env.example" "$bundle_dir/.env"
|
||||
echo "Created .env from .env.example"
|
||||
fi
|
||||
}
|
||||
|
||||
ensure_env_file
|
||||
|
||||
if [[ ! -d "$images_dir" ]]; then
|
||||
echo "Images directory not found: $images_dir" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
shopt -s nullglob
|
||||
image_archives=("$images_dir"/*.tar)
|
||||
if (( ${#image_archives[@]} == 0 )); then
|
||||
echo "No Docker image archives found in $images_dir" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
for image_archive in "${image_archives[@]}"; do
|
||||
echo "Loading image: $(basename "$image_archive")"
|
||||
docker load -i "$image_archive"
|
||||
done
|
||||
|
||||
if [[ -f "$images_dir/public-images.txt" ]]; then
|
||||
echo "Public images are not bundled and will be pulled by docker compose if missing:"
|
||||
sed 's/^/ - /' "$images_dir/public-images.txt"
|
||||
fi
|
||||
|
||||
cd "$bundle_dir"
|
||||
echo "Starting postgres, kafka and spring-cloud-config-server..."
|
||||
compose up -d postgres kafka spring-cloud-config-server
|
||||
|
||||
echo "Images imported and base services requested."
|
||||
Reference in New Issue
Block a user