#!/bin/sh # input: # SOURCE_IMAGE: Image name for the source image # TARGET_IMAGE: Name of image to build # DOTENV: The name of the .env.* file that contains the default env vars to export. # e.g. DOTENV=".env.12-3-stable" set -e cd "$(dirname "$0")/.." DOCKERFILE=Dockerfile.env rm -f $DOCKERFILE touch $DOCKERFILE echo "FROM $SOURCE_IMAGE" > $DOCKERFILE echo "Reading... $DOTENV" cat $DOTENV while IFS= read -r line; do echo "ENV $line" >> $DOCKERFILE done < $DOTENV echo "Pulling... $SOURCE_IMAGE" docker pull $SOURCE_IMAGE echo "Building... $DOCKERFILE and tagging $TARGET_IMAGE" cat $DOCKERFILE docker build -t $TARGET_IMAGE -f $DOCKERFILE . echo "Verifying env..." docker run --entrypoint='' $TARGET_IMAGE env