Useful tool for Dockerhub
Contents
Skopeo
I have stumbled upon this tool: https://github.com/containers/skopeo - command line tools for manipulation with Docker images and Docker image registries.
It can work with OCI images as well as the original Docker v2 images.
Installation
brew install skopeo
Usage
➜ deploy-2018-10-24 skopeo --override-os=linux inspect docker://docker.io/fedora
{
"Name": "docker.io/library/fedora",
"Digest": "sha256:b41cd083421dd7aa46d619e958b75a026a5d5733f08f14ba6d53943d6106ea6d",
"RepoTags": [
"20",
"21",
"22",
"23",
"24",
"25",
"26-modular",
"26",
"27",
"28",
"29",
"branched",
"heisenbug",
"latest",
"modular",
"rawhide"
],
"Created": "2018-09-07T19:20:02.809176076Z",
"DockerVersion": "17.06.2-ce",
"Labels": null,
"Architecture": "amd64",
"Os": "linux",
"Layers": [
"sha256:565884f490d9ec697e519c57d55d09e268542ef2c1340fd63262751fa308f047"
]
}
It works with protected repos as well - as long as creds are provided
skopeo --override-os=linux inspect --creds=''${CREDS}'' docker://docker.io/thinkwrap/dropship-ui:uat | jq ".Digest"
"sha256:43f95207dafa7dbc034e5126a9f6b6952e47e162206e889c1071f6e06308f4f4"
The reason for override-os
is running the client on MacOS. On Linux, this can be removed.
The double single quotes around ${CREDS}
is to make sure that special characters in password such as ;!|
will not confuse shell.
Getting information about all Tags
skopeo --override-os=linux inspect --creds=''${CREDS}'' docker://docker.io/thinkwrap/dropship-ui:uat | jq ".RepoTags[]"
"0.3.0"
"1.3.0-uat"
"1.3.1-uat"
"1.3.2-uat"
"1.4.0-uat"
"1.4.1-uat"
"1.4.2-uat"
"1.4.3-uat"
"1.4.4-uat"
"1.4.5-uat"
"1.4.6-uat"
"1.5.0-uat"
"1.5.1-uat"
"1.5.2-uat"
"1.5.3-uat"
"1.5.4-uat"
"1.5.5-uat"
"1.5.6-uat"
"development"
"uat"
Speaking of Docker container tools, see also: https://github.com/GoogleContainerTools/container-diff
Author Miro Adamy
LastMod 2018-10-24
License (c) 2006-2020 Miro Adamy