redirectdocker-exec的输出
docker exec
不为我工作。 如果我使用docker exec -it mymachine bash
连接到正在运行的容器并运行sh -c 'mysql -u root < /tmp/schema.sql'
,它就可以工作。
如果我只运行docker exec mymachine sh -c 'mysql -u root < /tmp/schema.sql'
,它不会给出任何错误,但是它什么也不做。 如果我运行docker exec mymachine sh -c 'mysql -u root < /tmp/i_dont_exist.sql'
,它也不会给我任何错误。
我该如何解决?
尝试这个 –
docker exec mymachine "sh -c 'mysql -u root < /tmp/schema.sql'"
如果没有,那么'<'操作符将被主机中的shell而不是容器拾取。
我怀疑<
运营商试图从你的主机而不是你的容器中抓取。 尝试将整个命令括在引号中。