images/installall.sh
2025-02-26 13:34:51 +01:00

74 lines
1.5 KiB
Bash

set -e
REGISTRY="git.eplg.services"
NAMESPACE="pterodactylimages"
DIRS=(
"games/rust"
"games/source"
"go/1.14"
"go/1.15"
"go/1.16"
"go/1.17"
"installers/alpine"
"installers/debian"
"java/8"
"java/8j9"
"java/11"
"java/11j9"
"java/16"
"java/16j9"
"java/17"
"java/17j9"
"java/18"
"java/18j9"
"java/19"
"java/19j9"
"java/21"
"nodejs/12"
"nodejs/14"
"nodejs/15"
"nodejs/16"
"nodejs/17"
"nodejs/18"
"nodejs/20"
"oses/alpine"
"oses/debian"
"python/3.7"
"python/3.8"
"python/3.9"
"python/3.10"
"python/3.11"
)
for DIR in "${DIRS[@]}"; do
IMAGE_NAME=$(echo "$DIR" | tr '/' '-')
IMAGE_REF="$REGISTRY/$NAMESPACE/$IMAGE_NAME"
echo "Building $DIR as $IMAGE_REF..."
DOCKERFILE_DIR="$(dirname "$DIR/Dockerfile")"
if [ -f "$(dirname "$DIR")/entrypoint.sh" ] && [ ! -f "$DOCKERFILE_DIR/entrypoint.sh" ]; then
cp "$(dirname "$DIR")/entrypoint.sh" "$DOCKERFILE_DIR/"
COPIED_ENTRYPOINT=true
else
COPIED_ENTRYPOINT=false
fi
docker build -t "$IMAGE_REF" -f "$DIR/Dockerfile" "$DOCKERFILE_DIR"
if [ "$COPIED_ENTRYPOINT" = true ]; then
rm "$DOCKERFILE_DIR/entrypoint.sh"
fi
echo "Pushing $IMAGE_REF..."
docker push "$IMAGE_REF"
echo "Successfully built and pushed $IMAGE_REF"
echo "----------------------------------------"
done
echo "All images built and pushed successfully!"