Files
code-server/deploy-k8s/build-images.sh
2021-11-16 23:19:38 -06:00

31 lines
942 B
Bash
Executable File

#!/bin/sh
# This will build and push public images in the images/ folder to
# DockerHub based on your Docker username with the
# format: $username/dev-env-$folder:latest
set -e
docker_username=$(docker-credential-$(jq -r .credsStore ~/.docker/config.json) list | jq -r '. | to_entries[] | select(.key | contains("docker.io")) | last(.value)')
build_and_push() {
folder=$1
basename=$(basename -- "$folder")
name=${basename%.*}
docker build $folder -t bencdr/dev-env-$name:latest
docker push $docker_username/dev-env-$name:latest
}
build_and_push "images/base"
# Build all other images in the images/ folder
# note: if you have multiple base images or heirchal images
# you'll want to build them in a controlled order above and
# exclude them. can be comma or space seperated :)
exclude="images/base"
for folder in images/*; do
if [[ ! "$exclude" == *"$folder"* ]]; then
build_and_push $folder
fi
done