#!/bin/bash # INSTALL SCRIPT # The install script is required for all templates. # It is used to install the service on the server. # It is called with the path to the server specific env file as an argument. source "$(dirname "$0")/_common.sh" # Required environment variables check_required_env_vars "CONTAINER_NAME" "IMAGE_REGISTRY" "IMAGE_REPO" "IMAGE_TAG" "LOCAL_DATA_FOLDER" # Create local data folder if it doesn't exist if [ -d "${LOCAL_DATA_FOLDER}" ]; then echo "Local data folder ${LOCAL_DATA_FOLDER} exists, using existing data." else echo "Local data folder ${LOCAL_DATA_FOLDER} does not exist, creating..." mkdir -p "${LOCAL_DATA_FOLDER}" cat < "${LOCAL_DATA_FOLDER}/index.html"

Hello, World!

EOF fi # Test Docker _check_docker_installed || die "Docker test failed, aborting installation..." # check can pull image on remote host and exit if fails docker pull "$IMAGE_REGISTRY/$IMAGE_REPO:$IMAGE_TAG" || die "Failed to pull image $IMAGE_REGISTRY/$IMAGE_REPO:$IMAGE_TAG" # remove and restart, as the env may have changed. bash ./stop.sh $1 || die "Failed to stop container ${CONTAINER_NAME}" _remove_container $CONTAINER_NAME || die "Failed to remove container ${CONTAINER_NAME}" bash ./start.sh $1 || die "Failed to start container ${CONTAINER_NAME}" echo "Installation of ${CONTAINER_NAME} complete" echo "You can access the service at http://${SERVER}:{HOST_PORT}"