実行時にはbuildah
主にheredocを使用します。
ctr=$(buildah from alpine:3);
buildah run $ctr sh -- <<EOF
apk update;
apk add git;
EOF
buildah commit $ctr heredoc_demo;
しかし、Podmanで同じことをしようとすると、次のエラーが発生します。
警告入力デバイスがTTYではありません。 --tty および --interactive フラグが正しく動作しないことがある
あなたは得ることができます、
❯ podman run -ti alpine:3 sh -- <<EOF
echo 42
EOF
WARN[0000] The input device is not a TTY. The `--tty` and `--interactive` flags might not work properly
または何も起こらない
podman run alpine:3 sh <<EOF
ここで正しい呼び出しは何ですか?
答え1
2つのオプションがあります。参考にしてください。
- 使用しないでください
-t
(--tty
) - 使用してください
-i
(--interactive
)
これは次のとおりです。
podman run -i heredoc_demo sh -- <<EOF
echo "Hello world";
EOF
または、
cat <<EOF | podman run -i heredoc_demo sh -
echo "Hello world";
EOF