You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

49 lines
1.2 KiB

10 years ago
Tini - A tiny but valid `init` for containers
=============================================
Tini is the simplest `init` you could think of.
All Tini does is spawn a single child (Tini is meant to be run in a container),
10 years ago
and wait for it to exit all the while reaping zombies and performing
signal forwarding.
10 years ago
Using Tini
----------
Add Tini to your container, and make it executable.
It's a very small file (10KB range). All Tini depends on is libc.
Once you've added Tini, use it like so:
tini -- your_program and its args
Note that you *can* skip the `--` above if your program only accepts
positional arguments, but it's best to get used to using it.
10 years ago
If you try to use positional arguments with Tini without using `--`, you'll
get an error similar to:
./tini: invalid option -- 'c'
Understanding Tini
------------------
After spawning your process, Tini will wait for signals and forward those
to the child process (except for `SIGCHLD` and `SIGKILL`, of course).
Besides, Tini will reap potential zombie processes every second.
Debugging
---------
If something isn't just like you expect, consider increasing the verbosity
level (up to 3):
tini -v -- bash -c 'exit 1'
tini -vv -- true
tini -vvv -- pwd