使用Docker在PhpStorm上configurationCodeSniffer

我正在开发一个使用PhpStorm的项目,我正在使用Docker的PHP 7.1。 我想将PHP代码嗅探器集成到PhpStorm中。

在PhpStorm我去设置|语言和框架| PHP | CodeSniffer和我尝试添加一个新的configuration,我提供作为PHP代码嗅探器(phpcs)path的脚本与以下内容的path:

#!/usr/bin/env bash docker run --rm -ti --volume "$(pwd):/app:rw" -u $(id -u):$(id -g) prooph/php:7.1-cli php vendor/bin/phpcs "$@" 

它只是在我的docker集装箱运行phpcs

当我点击validation ,PhpStorm给我以下消息:

 The input device is not a TTY 

当它从PhpStorm控制台运行时,相同的脚本完美地工作。

难道我做错了什么? 或者我想要做的只是不被支持?

你应该运行它没有-t标志:

 #!/usr/bin/env bash docker run --rm -i --volume "$(pwd):/app:rw" -u $(id -u):$(id -g) prooph/php:7.1-cli php vendor/bin/phpcs "$@" 

-t分配一个伪TTY,这就是为什么它在PhpStorm控制台上工作。