push
This commit is contained in:
Executable
+49
@@ -0,0 +1,49 @@
|
||||
#!/usr/bin/env bash
|
||||
set -Eeuo pipefail
|
||||
|
||||
ROOT="$(cd "$(dirname "$0")" && pwd)"
|
||||
|
||||
REGISTRY="${GITEA_REGISTRY:-${1:-}}"
|
||||
IMAGE_PATH="${GITEA_IMAGE_PATH:-${2:-}}"
|
||||
TAG="${IMAGE_TAG:-${3:-latest}}"
|
||||
PLATFORM="${PLATFORM:-linux/amd64}"
|
||||
|
||||
if [[ -z "$REGISTRY" || -z "$IMAGE_PATH" ]]; then
|
||||
cat <<USAGE
|
||||
Verwendung:
|
||||
$0 <registry> <owner/image> [tag]
|
||||
|
||||
Beispiel:
|
||||
$0 git.example.de meinuser/fixfin latest
|
||||
|
||||
Alternativ per Umgebungsvariablen:
|
||||
GITEA_REGISTRY=git.example.de \\
|
||||
GITEA_IMAGE_PATH=meinuser/fixfin \\
|
||||
IMAGE_TAG=latest \\
|
||||
$0
|
||||
|
||||
Vor dem ersten Push anmelden:
|
||||
sudo docker login <registry>
|
||||
USAGE
|
||||
exit 1
|
||||
fi
|
||||
|
||||
command -v docker >/dev/null 2>&1 || { echo "Docker fehlt."; exit 1; }
|
||||
docker buildx version >/dev/null 2>&1 || { echo "Docker Buildx fehlt."; exit 1; }
|
||||
|
||||
FULL_IMAGE="${REGISTRY}/${IMAGE_PATH}:${TAG}"
|
||||
|
||||
echo ">>> Build + Push"
|
||||
echo "Image: ${FULL_IMAGE}"
|
||||
echo "Platform: ${PLATFORM}"
|
||||
echo
|
||||
|
||||
cd "$ROOT"
|
||||
docker buildx build \
|
||||
--platform "$PLATFORM" \
|
||||
--tag "$FULL_IMAGE" \
|
||||
--push \
|
||||
.
|
||||
|
||||
echo
|
||||
echo "Fertig: ${FULL_IMAGE}"
|
||||
Reference in New Issue
Block a user