当本地ssh连接到我的计算机并执行“docker ps”时,我遇到了错误。 (或任何其他特定于docker的命令)。此问题仅与docker命令有关。其他所有命令都像魅力一样。
$ssh = new SSH2('127.0.0.1');
if (!$ssh->login('username', 'password')) {
exit('Login Failed');
}
// after succesfull login
echo $ssh->exec('docker ps'); // or any other docker command (error here)
echo $ssh->exec('ls -la');
执行上面的代码,第一个echo返回zsh:1: command not found: docker
,而第二个echo返回正确的信息。
我的设置是:
Laravel v5.5.19
phpseclib v2.0.7
macOS High Sierra 10.13(17A405)
Docker for Mac:版本:17.09.0-ce-mac35
更新
我认为问题是 mac本身(以及r 表示登录?)。 连接到Ubuntu 16.4服务器的Windows 10上面的相同代码完美无瑕。连接到Ubuntu服务器的mac工作正常,但mac连接到他自己(localhost),然后出现问题。