36 lines
967 B
Bash
Executable File
36 lines
967 B
Bash
Executable File
#!/bin/bash -e
|
|
|
|
# NOTE: the 5.5 and 5.6 versions do not have SSL enabled
|
|
versions="5.5 5.6 5.7 8.0"
|
|
|
|
function launch() {
|
|
VERSION=$1
|
|
CONTAINER_NAME="zgrab_mysql-$VERSION"
|
|
if docker ps --filter "name=$CONTAINER_NAME" | grep $CONTAINER_NAME; then
|
|
echo "mysql/setup: Container $CONTAINER_NAME already running -- stopping..."
|
|
docker stop $CONTAINER_NAME
|
|
echo "...stopped."
|
|
fi
|
|
docker run -itd --rm --name zgrab_mysql-$VERSION -e MYSQL_ALLOW_EMPTY_PASSWORD=true -e MYSQL_LOG_CONSOLE=true mysql:$VERSION
|
|
}
|
|
|
|
function waitFor() {
|
|
VERSION=$1
|
|
CONTAINER_NAME=zgrab_mysql-$VERSION
|
|
echo "mysql/setup: Waiting for mysqld process to come up on $CONTAINER_NAME..."
|
|
while ! (docker exec $CONTAINER_NAME ps -Af | grep mysqld > /dev/null); do
|
|
echo -n "*"
|
|
sleep 1
|
|
done
|
|
echo "...ok."
|
|
}
|
|
|
|
echo "mysql/setup: Launching docker containers..."
|
|
for version in $versions; do
|
|
launch $version
|
|
done
|
|
|
|
for version in $versions; do
|
|
waitFor $version
|
|
done
|