When specifying an Automated Build on Docker Hub, I can set some settings (Type
('Branch' or 'Tag'), Name
, Dockerfile Location
and Docker Tag Name
). But unfortunately I didn't find any documentation for those.
I assume, that when I choose Type
'Branch' and enter a Name
, this is the branch from my git repository on GitHub/BitBucket being used and that Docker Tag Name
results in the tag being assigned to the created image.
I played around a bit with it and found some things that are not clear to me - but I hope you can explain to me.
adding more than one entry results in only one tag being assigned. I used 'Branch', 'master' and '/' and 'latest' as the Docker Tag Name
in the first one, 'v1' in the second one. But only 'v1' is used as a tag.
Using Type
'Tag' didn't result in different result. I thought this might only build an image if a git commit is tagged with this value. What is this type for?
I was looking for the ability to assign the tag 'latest' to the latest build and use a scheme like v1, v2, v3 and so on for older builds as I could do when building images locally.
Automated docker image tagging is available on dockerhub! I fiddled with this recently and wanted to share my findings, jumping on this thread (hope it's ok!)
So I have a public GitHub repo with an automated build link on dockerhub. I want the :latest
tag to be updated every time I push to the master
branch. Also, I want :X
, :X.Y
and :X.Y.Z
tags to be created for every release I create on GitHub (tagged as vX.Y.Z
on GitHub).
Here is how the build settings config looks like to support this:
And in text so it's easier to copy-paste:
| Type | Name | Dockerfile Location | Docker Tag Name |
|--------|-----------------------------------|---------------------|-----------------|
| Branch | master | / | latest |
| Tag | /^v([0-9]+)\.([0-9]+)\.([0-9]+)$/ | / | {\1} |
| Tag | /^v([0-9]+)\.([0-9]+)\.([0-9]+)$/ | / | {\1}.{\2} |
| Tag | /^v([0-9]+)\.([0-9]+)\.([0-9]+)$/ | / | {\1}.{\2}.{\3} |
Hope this helps!