#!/bin/bash # Tags an already existing image version in a remote registry without needing to pull/push the whole image # # Usage: # /bin/docker-remote-tag # REPOSITORY="$1" TAG_OLD="$2" TAG_NEW="$3" CONTENT_TYPE="application/vnd.docker.distribution.manifest.v2+json" MANIFEST=$(curl -H "Accept: ${CONTENT_TYPE}" "${DOCKER_REGISTRY}/v2/${REPOSITORY}/manifests/${TAG_OLD}") curl -X PUT -H "Content-Type: ${CONTENT_TYPE}" -d "${MANIFEST}" "${DOCKER_REGISTRY}/v2/${REPOSITORY}/manifests/${TAG_NEW}"