Add a simple build script to build docker images and a basic dockerfile

pull/2/head
Mike Lang 6 years ago
parent 71b8f8a1b9
commit 1b21694c27

30
build

@ -0,0 +1,30 @@
#!/bin/bash
set -eu
# Builds the docker images.
# Usage: ./build {COMPONENTS}, or just ./build to build all.
# The resulting images are named wubloader-COMPONENT.
# The different images we can build
COMPONENTS=(downloader)
# The docker image tag, derived from the git commit + whether working tree is clean
TAG=$(git rev-parse --short HEAD)
if [ -n "$(git status --porcelain --untracked-files=no)" ]; then
TAG="$TAG-wip"
fi
if [ "$#" -gt 0 ]; then
COMPONENTS=("$@")
fi
for component in "${COMPONENTS[@]}"; do
echo "Building image for $component"
docker build \
-f "$component/Dockerfile" \
-t "wubloader-$component:latest" \
-t "wubloader-$component:$TAG" \
.
echo "Built image wubloader-$component:$TAG"
done

@ -0,0 +1,15 @@
FROM alpine:3.7
RUN apk --update add py2-pip
# Install common lib first as it changes less
COPY common /tmp/common
RUN pip install /tmp/common && rm -r /tmp/common
# Install actual application
COPY downloader /tmp/downloader
RUN pip install /tmp/downloader && rm -r /tmp/downloader
# Add config file last as it changes most
COPY config.yaml /etc/wubloader.yaml
CMD python2 -m downloader
Loading…
Cancel
Save