From 51907b3fb29b48940e84d8581b4643e92968508d Mon Sep 17 00:00:00 2001 From: Matt Oswalt Date: Fri, 2 Aug 2019 23:40:32 -0700 Subject: [PATCH 1/3] Update vqfx (light) image Signed-off-by: Matt Oswalt --- images/vqfx/Dockerfile | 2 +- images/vqfx/Dockerfile-snap1 | 25 ------------------------- images/vqfx/Dockerfile-snap2 | 25 ------------------------- images/vqfx/Dockerfile-snap3 | 25 ------------------------- images/vqfx/Makefile | 12 ++++++++++++ images/vqfx/download_packages.sh | 18 ++++++++++++++++++ images/vqfx/push.sh | 12 ------------ 7 files changed, 31 insertions(+), 88 deletions(-) delete mode 100644 images/vqfx/Dockerfile-snap1 delete mode 100644 images/vqfx/Dockerfile-snap2 delete mode 100644 images/vqfx/Dockerfile-snap3 create mode 100644 images/vqfx/Makefile create mode 100755 images/vqfx/download_packages.sh delete mode 100755 images/vqfx/push.sh diff --git a/images/vqfx/Dockerfile b/images/vqfx/Dockerfile index 72e0722d..64f2b965 100644 --- a/images/vqfx/Dockerfile +++ b/images/vqfx/Dockerfile @@ -18,7 +18,7 @@ RUN apt-get update -qy \ procps \ && rm -rf /var/lib/apt/lists/* -COPY vqfx-orig.qcow2 /vqfx.qcow2 +COPY jinstall-vqfx-10-f-18.4R1.8.qcow2 /vqfx.qcow2 COPY launch.sh / EXPOSE 22 161/udp 830 5000 10000-10099 diff --git a/images/vqfx/Dockerfile-snap1 b/images/vqfx/Dockerfile-snap1 deleted file mode 100644 index d4aecc38..00000000 --- a/images/vqfx/Dockerfile-snap1 +++ /dev/null @@ -1,25 +0,0 @@ -FROM debian:stable - -ENV DEBIAN_FRONTEND=noninteractive - -RUN apt-get update -qy \ - && apt-get upgrade -qy \ - && apt-get install -y \ - bridge-utils \ - iproute2 \ - python3-ipy \ - tcpdump \ - htop \ - socat \ - screen \ - qemu-kvm \ - telnet \ - vim \ - procps \ - && rm -rf /var/lib/apt/lists/* - -COPY vqfx-snap1.qcow2 /vqfx.qcow2 -COPY launch.sh / - -EXPOSE 22 161/udp 830 5000 10000-10099 -ENTRYPOINT ["/launch.sh"] diff --git a/images/vqfx/Dockerfile-snap2 b/images/vqfx/Dockerfile-snap2 deleted file mode 100644 index faa85d5b..00000000 --- a/images/vqfx/Dockerfile-snap2 +++ /dev/null @@ -1,25 +0,0 @@ -FROM debian:stable - -ENV DEBIAN_FRONTEND=noninteractive - -RUN apt-get update -qy \ - && apt-get upgrade -qy \ - && apt-get install -y \ - bridge-utils \ - iproute2 \ - python3-ipy \ - tcpdump \ - htop \ - socat \ - screen \ - qemu-kvm \ - telnet \ - vim \ - procps \ - && rm -rf /var/lib/apt/lists/* - -COPY vqfx-snap2.qcow2 /vqfx.qcow2 -COPY launch.sh / - -EXPOSE 22 161/udp 830 5000 10000-10099 -ENTRYPOINT ["/launch.sh"] diff --git a/images/vqfx/Dockerfile-snap3 b/images/vqfx/Dockerfile-snap3 deleted file mode 100644 index 72bb3a66..00000000 --- a/images/vqfx/Dockerfile-snap3 +++ /dev/null @@ -1,25 +0,0 @@ -FROM debian:stable - -ENV DEBIAN_FRONTEND=noninteractive - -RUN apt-get update -qy \ - && apt-get upgrade -qy \ - && apt-get install -y \ - bridge-utils \ - iproute2 \ - python3-ipy \ - tcpdump \ - htop \ - socat \ - screen \ - qemu-kvm \ - telnet \ - vim \ - procps \ - && rm -rf /var/lib/apt/lists/* - -COPY vqfx-snap3.qcow2 /vqfx.qcow2 -COPY launch.sh / - -EXPOSE 22 161/udp 830 5000 10000-10099 -ENTRYPOINT ["/launch.sh"] diff --git a/images/vqfx/Makefile b/images/vqfx/Makefile new file mode 100644 index 00000000..4c9ad871 --- /dev/null +++ b/images/vqfx/Makefile @@ -0,0 +1,12 @@ +# SHELL=/bin/bash + +TARGET_VERSION ?= latest + +all: docker + +docker: + + ./download_packages.sh + + docker build -t antidotelabs/vqfx:$(TARGET_VERSION) . + docker push antidotelabs/vqfx:$(TARGET_VERSION) diff --git a/images/vqfx/download_packages.sh b/images/vqfx/download_packages.sh new file mode 100755 index 00000000..041268c9 --- /dev/null +++ b/images/vqfx/download_packages.sh @@ -0,0 +1,18 @@ +#!/bin/bash + +# This script uses the gsutil utility from Google Cloud +# to download files from the relevant bucket. See +# https://cloud.google.com/sdk/docs/ for instructions on installing +# the Google Cloud SDK, which includes this utility. + +declare -a arr=( + "container-vqfx/jinstall-vqfx-10-f-18.4R1.8.qcow2" +) + +for i in "${arr[@]}" +do + gsutil cp "gs://nrelabs-curriculum-base-images/$i" "./$i" + mv "$i" ./ +done + +rm -rf container-vqfx/ diff --git a/images/vqfx/push.sh b/images/vqfx/push.sh deleted file mode 100755 index c5c25938..00000000 --- a/images/vqfx/push.sh +++ /dev/null @@ -1,12 +0,0 @@ -# docker build -f Dockerfile -t antidotelabs/vqfx . - -# docker run -p 2202:22 --privileged --rm --name vqfx -v /Users/mierdin/Code/GO/src/github.com/nre-learning/nrelabs-curriculum/images/vqfx:/dockervolume antidotelabs/vqfx - -# docker push antidotelabs/vqfx - - -docker build -f Dockerfile-snap1 -t antidotelabs/vqfx:snap1 . -docker build -f Dockerfile-snap2 -t antidotelabs/vqfx:snap2 . -docker build -f Dockerfile-snap3 -t antidotelabs/vqfx:snap3 . - -docker push antidotelabs/vqfx From 3c6daaae6fd6413929118fec7f3926183ef08729 Mon Sep 17 00:00:00 2001 From: Matt Oswalt Date: Fri, 2 Aug 2019 23:46:44 -0700 Subject: [PATCH 2/3] updated changelog Signed-off-by: Matt Oswalt --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index f0ff7b4f..bc8261a1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,7 @@ - Added a lesson on BASH [Commit #1fe7b94](https://github.com/nre-learning/nrelabs-curriculum/commit/1fe7b94454e880b1a468b1d1742d2911139359ab) - Remove platform images from curriculum [#245](https://github.com/nre-learning/nrelabs-curriculum/pull/245) - Modified images to support a standard build process [#247](https://github.com/nre-learning/nrelabs-curriculum/pull/247) +- Update vqfx (light) image [#251](https://github.com/nre-learning/nrelabs-curriculum/pull/251) ## v0.3.2 - April 19, 2019 From d37a2381fa8f5c4d099cf54eb928bdbed42663c3 Mon Sep 17 00:00:00 2001 From: Matt Oswalt Date: Sun, 4 Aug 2019 14:25:02 -0700 Subject: [PATCH 3/3] Add snapshot logic Signed-off-by: Matt Oswalt --- images/vqfx/Makefile | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/images/vqfx/Makefile b/images/vqfx/Makefile index 4c9ad871..5385bd7e 100644 --- a/images/vqfx/Makefile +++ b/images/vqfx/Makefile @@ -6,7 +6,22 @@ all: docker docker: - ./download_packages.sh + # ./download_packages.sh docker build -t antidotelabs/vqfx:$(TARGET_VERSION) . - docker push antidotelabs/vqfx:$(TARGET_VERSION) + # docker push antidotelabs/vqfx:$(TARGET_VERSION) + + # The below might be useful for building an image with snapshots. + # Currently leaving this commented out so that we can finish the rest of the pipeline without this added + # complexity, not to mention that some infrastructure improvements (both prod and selfmedicate) might mean + # we don't need to do the snapshot trick. However, if it proves necessary in the future, this does work, + # we just need to add the logic to copy the resulting disk file out and into its own container, so we don't + # create a monster image. + # + docker kill vqfx || true + docker rm vqfx || true + sleep 5 + docker run -d --name vqfx -v $$(pwd):/cap --rm -p 2222:22 --privileged antidotelabs/vqfx:$(TARGET_VERSION) + # ./wait_for_live.sh + # docker exec vqfx /create_snapshot.expect +