Podmanの起動時に「-i」はいつ必要となり、Podmanの作成で「-i」はどのように機能しますか?

Podmanの起動時に「-i」はいつ必要となり、Podmanの作成で「-i」はどのように機能しますか?

podman create-iたとえば、端末にSTDINがない場合、コンテナで実行されているプログラムが送信されないというフラグがあります(これを実行しないでください)。

podman run -t alpine:3 /bin/sh

他の端末で終了せずに終了する方法はありません。走らなければならないこと

# Now with -i redirecting STDIN so you can `exit`
podman run -ti alpine:3 /bin/sh

これでシェルを終了して終了できます。このコマンドには同じ方法で書き込まれるコマンドpodman createもあります。-i

-i, --interactive Keep STDIN open even if not attached

(同じ方法で文書化されている)コマンドもありますが、aの代わりに...シーケンスのpodman start場合、すべてのsが不要なようです。彼らは何をしなければならず、どう違いますか?-icreatestartrun-i

podman create -t alpine:3 /bin/sh # no -i option
podman start -a -l                # no -i option, terminal accepts STDIN

この用語をSTDINとして読むべきではないようです。

答え1

-i指定する場合は-t不要として記録された

trueに設定すると、Podmanはpseudo-ttyを割り当ててコンテナの標準入力に接続します。たとえば、ワンタイムインタラクティブシェルを実行するために使用できます。デフォルトは偽です。

-aオプションを使用してオプションをオーバーライド(キャンセル)または割り当てることはできません-i。このオプションは、次の場合に便利です。start-t-icreateいいえ指定されたcreate時間。-i意味が少し違うので参考にしてくださいcreate:

接続されていない場合でもSTDINを開いたままにしてください。

V.start:

接続コンテナの STDIN。

どちらの場合も、-i有用な機能を実行できない可能性がありますが(コンテナで実行されるコマンドの期待に応じて)、なしでまたは一緒に使用できます。-t-a

関連情報