Based on CircleCI golang image and skopeo.
Your best bet is building a docker container using the Dockerfile
contained in this repository:
docker build -t retagger:latest .
The Dockerfile uses a Golang container to build a static binary of skopeo
(following this doc).
Then it copies the binary to a cimg/go
-based container, which is an official
CircleCI's runner with Golang installed. The resulting image is used in the
.circleci/config
.
You can test resulting image by running:
docker run --rm -it retagger:latest skopeo --help
Check skopeo
version as well:
~ docker run --rm -it retagger-test:latest skopeo --version
skopeo version 1.11.1-dev
Important: Make sure Golang versions in the Dockerfile match. Just in case.
- CircleCI runner, also Golang version - update
GOLANG_VERSION
version in the Dockerfile. - Skopeo - update
skopeo
subtree. You might want to updateGOLANG_VERSION
as well to match the upstream.