Files
web2.0-backend/scripts/autoinstall.sh
T
2017-04-06 18:18:54 +03:00

58 lines
1.8 KiB
Bash
Executable File

#!/bin/bash
echo "SIKWEB 2.0 Dockerific install script"
echo "===================================="
echo "Checking if docker is installed..."
docker --version
if [ "$?" -ne 0 ]
then
echo "Installing docker..."
curl -fsSL https://get.docker.com/ | sh
fi
echo "Starting docker daemon and sleeping for 10 seconds..."
dockerd & 2>/dev/null || { echo "Docker daemon failed to start!"; exit 1; }
sleep 10
echo "Checking if docker-compose is installed..."
docker-compose --version
if [ "$?" -ne 0 ]
then
echo "Installing docker-compose 1.11.2..."
curl -L https://github.com/docker/compose/releases/download/1.11.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
fi
PROJECT="web20_site"
echo "Building db container..."
docker-compose -p "$PROJECT" build db || { echo "Failed to build db!"; exit 1; }
echo "Starting db container..."
docker-compose -p "$PROJECT" up -d db || { echo "Failed to start db container!"; exit 1; }
echo "Waiting 10 seconds..."
sleep 10
echo "Importing database settings..."
docker-compose -p "$PROJECT" exec -T db sh /db/install.sh || { echo "Failed to import database settings!"; exit 1; }
echo "Shutting down db container..."
docker-compose -p "$PROJECT" down db
echo "Copying settings..."
cp sikweb/settings-docker-sample.py sikweb/settings.py || { echo "Failed to copy settings!"; exit 1; }
echo "Building web container..."
docker-compose -p "$PROJECT" build web
echo "Running manage.py commands..."
docker-compose -p "$PROJECT" run web python manage.py migrate || { echo "Failed to apply migrations!"; exit 1; }
docker-compose -p "$PROJECT" run web python manage.py createdefaultadmin || { echo "Failed to create default admin user."; }
echo "Starting all containers..."
docker-compose -p "$PROJECT" up -d || { echo "Failed to start containers!"; exit 1; }
echo "Done."