|
|
|
|
|
by jjeaff
2579 days ago
|
|
Regarding the docker images elastic provides, I find it odd that they are only hosted from their own servers (rather than docker hub) and I have looked all over the place to find the dockerfile they use to create those images. It seems that they are hiding that info and it really locks you into only doing customizations that the docker image is directly built for. I also don't like to pull images blindly. I generally fork the dockerfile source so that I can build the software from source and have a bit more control and knowledge of what I am installing. |
|
It includes a deep link straight into their repository right at the top: https://github.com/elastic/elasticsearch/tree/7.1/distributi...
In short, their Docker build process is part of the elasticsearch repository. So, it's actually part of their normal build process and not something that happens with a separate build in some different repository. Personally, I think this is a good practice.
That's for both the OSS and non OSS images. They produce these with every build. And they probably test them too, which I think is the responsible thing to do and something I'd expect from them.
They use gradle to build their docker images from a Docker file (https://github.com/elastic/elasticsearch/blob/7.1/distributi...) that essentially untars the tar ball produced by their build. This looks pretty straightforward and free of magic steps.
So, read the source. It's all there. You can build from source or do your own thing. A variant of their Docker file where you just wget their tar ball shouldn't be that hard to do.