Our great sponsors
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
cinit
tini
- Anakin – Automatically Kill Orphans
-
Freenginx.org
yes busybox httpd or civetweb is even smaller, both around 300kb.
for tini you mean https://github.com/krallin/tini? how large is your final docker image, why not just alpine in that case which is musl+busybox
-
🚨Avoid this when running containerized applications in production
Tini, a useful process manager for containerized apps
-
Should You Be Scared of Unix Signals?
Ah gotcha. I believe it can be baked into images as well, per the entrypoint example in the readme: https://github.com/krallin/tini
Not sure how this will fare IRL in k8s as I haven’t much experience there. It’s still silly that this is the default behavior where you need something like Tini, but I digress.
-
The Tailscale Universal Docker Mod
To be fair, even for running a single process the pitfalls are real. I've been seeing Tini[1] a lot for these situations.
I just read in the README that Tini is included by Docker since 1.13 if using --init flag.
[1] https://github.com/krallin/tini
-
docker run --init flag doesn't seem to work on Mac
The default init process used is the first docker-init executable found in the system path of the Docker daemon process. This docker-init binary, included in the default installation, is backed by tini.
- ส่อง Dockerfile for Go
- Learning by doing: An HTTP API with Rust
-
Silver bullet: selfhostable personal knowledge management system
AFAIK It's for the init process to reparent zombie processes. See TINI
-
How to implement pods that gracefully shutdown
The second easiest (and most common when your entry point is a bash script) is to use a fake init tool like tini
What are some alternatives?
grype - A vulnerability scanner for container images and filesystems
dumb-init - A minimal init system for Linux containers
pmgo - pmgo is a process manager for Golang applications.
systemd - The systemd System and Service Manager
buildkit - concurrent, cache-efficient, and Dockerfile-agnostic builder toolkit
inotify-tools - inotify-tools is a C library and a set of command-line programs providing a simple interface to inotify.
erda - An enterprise-grade Cloud-Native application platform for Kubernetes.
torsocks - Library to torify application - NOTE: upstream has been moved to https://gitweb.torproject.org/torsocks.git
syft - CLI tool and library for generating a Software Bill of Materials from container images and filesystems
s6 - The s6 supervision suite.
Lean and Mean Docker containers - Slim(toolkit): Don't change anything in your container image and minify it by up to 30x (and for compiled languages even more) making it secure too! (free and open source)
dualsensectl - Linux tool for controlling PS5 DualSense controller