mqttauditing/startBuildEnv.sh

58 lines
1.4 KiB
Bash
Executable File

#!/bin/bash
IMAGE=registry.hottis.de/dockerized/c-build-env:latest
OPT_BROKER=""
OPT_MARIADB=""
OPT_ROOT=""
while getopts mbphrc flag
do
case "${flag}" in
b) echo "Start broker";
docker run -d --rm --name broker -p 1883:1883 eclipse-mosquitto;
OPT_BROKER="--link broker";
;;
m) echo "Start MariaDB";
MARIADB_DATA_DIR=$PWD/mariadb-data
[ -d $MARIADB_DATA_DIR ] || mkdir -p $MARIADB_DATA_DIR
docker run -d --rm --name mariadb -v $PWD:/mnt -v $MARIADB_DATA_DIR:/var/lib/mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=geheim123 mariadb;
OPT_MARIADB="--link mariadb";
;;
c) echo "Create database";
docker exec -it mariadb mysql -u root --password=geheim123 -e "source /mnt/auditdb.sql" mysql
exit 0;
;;
p) echo "Pull environment image";
docker pull $IMAGE;
;;
r) echo "Run environment as root";
OPT_ROOT="-u 0";
;;
h) echo "Usage:";
echo "-b: Start broker";
echo "-m: Start MariaDB";
echo -"c: Create the database";
echo "-p: Pull new environment image";
echo "-r: Run environment as root";
echo "-h: This help";
exit 0;
;;
esac
done
docker run -it --rm $OPT_BROKER $OPT_MARIADB $OPT_ROOT -v $PWD:/work $IMAGE bash
if [ "$OPT_BROKER" != "" ]; then
echo "Stopping broker"
docker stop broker
fi
if [ "$OPT_MARIADB" != "" ]; then
echo "Stopping MariaDB"
docker stop mariadb
fi