Docker 将stdin传递到容器

示例

在诸如还原数据库转储,或希望通过管道从主机通过管道推送某些信息的情况下,可以将-i标志用作docker run或的参数docker exec。

例如,假设您要在本地dump.sql文件中将主机上具有的数据库转储放入容器化的mariadb客户端,则可以执行以下命令:

docker exec -i mariadb bash -c 'mariadb "-p$MARIADB_PASSWORD" ' < dump.sql

一般来说,

docker exec -i container command < file.stdin

要么

docker exec -i container command <<EOF
inline-document-from-host-shell-HEREDOC-syntax
EOF