Hey everyone
Re: jemalloc vs slim vs whatever
Use jemalloc by default, if we can absolutely guarantee no issues with the underlying distro
Although using a jemalloc-backed image is great in terms of performance, I have some concerns here.
The image used by Fly (and maintained by Evil Martians) uses Fullstaq Ruby. Even though both the Docker image and other Fullstaq Ruby distributions have been battle-tested in production, they’re not official Ruby/MRI projects. This introduces potential point of failures: Fullstaq Ruby could become deprecated at some point, Evil Martians could migrate to a different Docker registry (why don’t we use Docker Hub ).
To sum up, I think, sticking with the official Ruby image would be better. As an alternative to having jemalloc by default, I’d suggest adding a guide/doc on customizing Dockerfiles mentioning performance-optimized versions. And add a link to the guide to the guide right into the Dockerfile:
# See https://guides.rubyonrails.org/docker.html for other image options
FROM ruby:...