The Elastic Package Registry (epr.elastic.co) run a docker container that contains the packages + the registry service itself. Today the packages are in the same repository as the registry but this is changing. Packages will be moving to https://github.com/elastic/package-storage Also there is work ongoing to have a Dockerfile available that is independent of both repository.
This means the Docker image will contain data from two different sources. For debugging and support purpose I think it is important that we can identify what exactly went into this Docker image to potentially reproduce issues.
My proposal related to naming each Docker image is as following:
{date}-{package-storage-hash}-{package-registry-hash}
hash in the above can be a commit hash but also a branch or a tag. The date part is for human and sorting purpose to identify when exactly an image was built. Two examples of the above would look as following:
202004231234-c890763-c1d2c2c
202004231234-c890763-v0.3.0
The package hash will change much more often than the registry one but it also the more important one for debugging purpose. That is why I think it should come first.
To build this image, both the package-storage hash and package-registry hash are passed to the Dockerfile and then used to check out the correct version (https://github.com/elastic/package-registry/blob/master/dev/release/Dockerfile#L19).
Questions
- Is the above possible to build / automate? Does it make sense?
- What is the date/time format we should use?
The Elastic Package Registry (epr.elastic.co) run a docker container that contains the packages + the registry service itself. Today the packages are in the same repository as the registry but this is changing. Packages will be moving to https://github.com/elastic/package-storage Also there is work ongoing to have a Dockerfile available that is independent of both repository.
This means the Docker image will contain data from two different sources. For debugging and support purpose I think it is important that we can identify what exactly went into this Docker image to potentially reproduce issues.
My proposal related to naming each Docker image is as following:
{date}-{package-storage-hash}-{package-registry-hash}hashin the above can be a commit hash but also a branch or a tag. Thedatepart is for human and sorting purpose to identify when exactly an image was built. Two examples of the above would look as following:202004231234-c890763-c1d2c2c202004231234-c890763-v0.3.0The package hash will change much more often than the registry one but it also the more important one for debugging purpose. That is why I think it should come first.
To build this image, both the
package-storagehash andpackage-registryhash are passed to the Dockerfile and then used to check out the correct version (https://github.com/elastic/package-registry/blob/master/dev/release/Dockerfile#L19).Questions