我需要在我的shell脚本中知道一些docker exec命令的输出,例如我有一个nginx容器,在我的脚本中运行:
docker exec -it containerName /etc/init.d/nginx configtest
我想仅在nginx配置测试成功时才继续执行脚本,而不是在失败时.
我已经尝试使用$?
,但它0
甚至然后configtest输出失败(因为我理解的docker exec成功执行).
将我的评论翻译成答案.这应该工作:
docker exec -it mynginx /etc/init.d/nginx configtest && echo "pass" || echo "fail"
这个对我有用.
我发现这很好用:
docker exec -t -i my-container sh -c 'my-command; exit $?'