使用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控制台上工作。