当我运行时buildah
,我通常使用heredoc,
ctr=$(buildah from alpine:3);
buildah run $ctr sh -- <<EOF
apk update;
apk add git;
EOF
buildah commit $ctr heredoc_demo;
然而,当我尝试用 podman 做同样的事情时,我收到这样的错误,
警告[0000] 输入设备不是 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
您有两个选择,请注意:
- 不使用
-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