[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#999589: ITP: catatonit -- Lightweight init implementation for containers



Hi Reinhard,

Le 2021-11-12 16:07, Reinhard Tartler a écrit :
> Package: wnpp
> Owner: Reinhard Tartler <siretart@tauware.de>
> Severity: wishlist
> 
> * Package name    : catatonit
>   Version         : 0.1.7
>   Upstream Author : 2018 SUSE LLC
> * URL or Web page : https://github.com/openSUSE/catatonit
> * License         : GPLv3
>   Description     : Lightweight init implementation for containers
> 
> A container init that is so simple it's effectively brain-dead. This is a
> rewrite of [initrs][initrs] in C, because we found that it is not possible to
> statically compile Rust binaries without using musl. That was, in turn, a
> reimplementation of other container inits like `tini` and `dumb-init`.
> 
> The reason for re-implementing `docker-init` is because it appears as though
> all of the other implementations do not handle signals as correctly as they
> should. In particular, they all appear to make use of `sigwait(2)` (`tini` does
> a `sigtimedwait(2)` for an interval and then will do a `waitpid(2)` even if it
> didn't detect a `SIGCHLD`). `catatonit` uses `signalfd(2)`, which [has its own
> warts][signalfd-broken], but the improvements over `sigwait(2)` are significant
> in terms of stability. Ideally we would just write a patch for the other
> projects to use `signalfd(2)` rather than creating a new project, but after
> some time spent looking at `tini` and `dumb-init` we felt that such patches
> would be closer to full rewrites.
> 
> In addition, the purpose of `catatonit` is to only support the key usage by
> `docker-init` which is `/dev/init -- <your program>`. With few exceptions, no
> other features will be added.
> 
> Co-maintainers welcome!

catatonit is already available in Debian.

Cheers,
Vincent

Attachment: signature.asc
Description: PGP signature


Reply to: