43 lines
1.2 KiB
Bash
Executable File
43 lines
1.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -e
|
|
|
|
versions="openntp 4.2.6"
|
|
|
|
CONTAINER_TAG="zgrab_ntp"
|
|
for version in $versions; do
|
|
CONTAINER_NAME="zgrab_ntp_$version"
|
|
|
|
echo "ntp/setup: Setting up $CONTAINER_NAME"
|
|
|
|
DOCKER_RUN_ARGS="--privileged -itd --rm --name $CONTAINER_NAME"
|
|
|
|
if docker ps --filter "name=$CONTAINER_NAME" | grep -q $CONTAINER_NAME; then
|
|
echo "ntp/setup: Container $CONTAINER_NAME already running -- skipping."
|
|
else
|
|
# First attempt: just launch the container
|
|
if ! docker run $DOCKER_RUN_ARGS "$CONTAINER_TAG:$version"; then
|
|
# If it fails, build it from ./container/Dockerfile
|
|
echo "ntp/setup: Building $CONTAINER_TAG:$version from ./container-$version"
|
|
docker build -t "$CONTAINER_TAG:$version" ./container-$version
|
|
# Try again
|
|
docker run $DOCKER_RUN_ARGS $CONTAINER_TAG:$version
|
|
fi
|
|
fi
|
|
done
|
|
|
|
echo -n "ntp/setup: Waiting on zgrab_ntp_openntp..."
|
|
while ! docker logs --tail all zgrab_ntp_openntp | grep -q "ntp engine ready"; do
|
|
echo -n "."
|
|
done
|
|
echo "...done."
|
|
|
|
echo -n "ntp/setup: Waiting on zgrab_ntp_4.2.6..."
|
|
while ! docker logs --tail all zgrab_ntp_4.2.6 | grep -q "listen"; do
|
|
echo -n "."
|
|
done
|
|
|
|
sleep 1
|
|
|
|
echo "...done."
|