在 docker-compose 中启动 systemd 并调用另一个函数

Start systemd in docker-compose and call another function

我正在尝试使用 /usr/lib/systemd/systemd 在 SuSE 容器中启动 systemd,然后调用另一个函数,例如 docker-compose 或 [=28 中的 echo "Hi" =].这就是 /bin/bash -c "/usr/lib/systemd/systemd && echo 'Hi'" 理论上会做的事情,但由于 bash 进程有 PID1systemd 有,所以 systemd 没有启动是个大问题PID2 导致 systemd 无法从用户域启动的错误消息。

我在 Yelp 的 dumb-init 上取得了部分成功(因为它接受了 运行 之后的参数),但更喜欢完整的 systemd。此外,如果有一个简单的 oneliner 而不是必须调用脚本(如果这是一个解决方案,因为这可能也会导致 bash-process 具有 PID1),这将是非常好的。 =22=]

根本不清楚为什么要启动 systemd。您要使用 systemd 的哪个功能?

如果只是想在 systemd 启动后 运行 一些东西,那么编写一个简单的 systemd .service 文件是可行的方法。

有关 systemd 配置文件的更多信息,请参阅 man systemd.serviceman systemd.unit