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

관련 정보