Control: tag -1 moreinfo Followup-For: Bug #950851 Package: src:runit
Hello, > as in policy 9.3.3. Interfacing with init systems > rc.d should not be called directly, but invoke-rc.d should be used. 9.3.3 talks about maintainerscripts, is this the case? > This allows one to control environment with policy-rc.d hack. > > Unfortunatelly runit does not follow this rule, this lead to some unexpected > issues: > > e.g. > I want to run several process inside docker container (or other limited > environment): > - I disable rc.d scripts with policy-rc.d > - create /etc/sv config for daemons > - set runit as entrypoint > > But, unexpectedly, runit starts my other process with > /lib/runit/run_sysv_scripts > [...] > Init: systemd (via /run/systemd/system) > [...] I need more info to reproduce the issue; I'm not even sure I understand it correctly. The fact that I've never used docker doesn't help, so please be patient. I've just read some (probably obsolete) documentation about docker and I can make a guess: * You have a systemd machine with runit (and maybe runit-systemd) installed * You want to use runit as service manager inside docker * when you start the docker image you end up with all services that are not managed with runit started with sysv script inside the container. But you want only services started with runit. Is the above correct? Are you using /etc/runit/2 as an entrypoint? Have you installed runit-init in the docker image, or just runit? Is the version of runit 2.1.2-25? Can you post details about the Dockerfile and the image you are using? Thanks, Lorenzo -- System Information: Debian Release: bullseye/sid APT prefers unstable APT policy: (500, 'unstable') Architecture: amd64 (x86_64) Kernel: Linux 5.4.0-3-amd64 (SMP w/4 CPU cores) Kernel taint flags: TAINT_UNSIGNED_MODULE Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: runit (via /run/runit.stopit)