Docker は、コンテナの起動時にコマンドを実行する機能を提供します。これは以下を使用して指定されます。CMD
Dockerfileから。
しかし、私のコンテナをsystemdで起動するには、次のものを使用する必要があります。
CMD ["/usr/sbin/init"]
その後、ps1でinitを実行します。では、CMD
何が役に立ちますか? systemdを起動する方法はありますか?別のプロセスを開始してください。コマンドラインまたはpodman run
何かを指定しますか?
コンテナ化にはさまざまな愚かな初期化プロセスがあります。たとえば、次のようになります。catatonit
、dumb-init
とtini
しかし、彼らはすべて「馬鹿」です。 default.targetをクリックした後にプロセスを指定できる物理システムを初期化したいです。
ベストアンサー1
CMD
構成コンテナを使用してsystemdを起動しているので、私の考えでは「動作」します。
コンテナーから別のコマンドを開始するには、次のようにします。
- コマンドラインから
docker exec
; - コンテナ定義でsystemdサービスを使用します。