#!/bin/bash # Specify the image name and tag IMAGE_NAME="myp-rp" IMAGE_TAG="latest" # Specify the input file name for the compressed and uncompressed Docker image INPUT_FILE="myp-rp_latest.tar" COMPRESSED_INPUT_FILE="myp-rp_latest.tar.xz" # Path to the docker directory DOCKER_DIR="$PWD/docker" # Path to the compose file COMPOSE_FILE="$DOCKER_DIR/compose.yml" # Check if the compressed input file exists if [ -f "$DOCKER_DIR/$COMPRESSED_INPUT_FILE" ]; then echo "Found compressed Docker image: $COMPRESSED_INPUT_FILE" # Decompress the .tar.xz file echo "Decompressing the Docker image..." xz -d "$DOCKER_DIR/$COMPRESSED_INPUT_FILE" # Check if the decompression was successful if [ $? -ne 0 ]; then echo "Error occurred while decompressing $COMPRESSED_INPUT_FILE" exit 1 fi echo "Decompression completed: $INPUT_FILE" fi # Check if the uncompressed input file exists if [ ! -f "$DOCKER_DIR/$INPUT_FILE" ]; then echo "Error: $INPUT_FILE not found in $DOCKER_DIR" exit 1 fi # Load the Docker image echo "Loading Docker image from $INPUT_FILE..." docker load -i "$DOCKER_DIR/$INPUT_FILE" # Check if the operation was successful if [ $? -eq 0 ]; then echo "Image successfully loaded into Docker" else echo "Error occurred while loading the image" exit 1 fi # Check if the compose file exists if [ ! -f "$COMPOSE_FILE" ]; then echo "Error: compose.yml not found in $DOCKER_DIR" exit 1 fi # Execute docker compose echo "Running docker compose..." docker compose -f "$COMPOSE_FILE" up -d # Check if the operation was successful if [ $? -eq 0 ]; then echo "Docker compose executed successfully" else echo "Error occurred while executing docker compose" exit 1 fi echo "Process completed successfully"