码头工人和提升的私人

时间:2018-12-11 09:29:38

标签: powershell docker

是否可以在不提升priv ex的情况下运行docker。 (docker版本)。 我试图用powershell invoke命令在另一台机器(带有docker作为服务的Windows服务器)上运行命令,但是似乎只要docker坚持我不能提高特权即可。

因此,如果我可以让“ docker verison”在所有设置下正常工作。

我得到的错误是 docker.exe:连接期间出错:发布http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.39/containers/create:打开//.//pipe/docker_engine:访问被拒绝。在Windows上的默认守护程序配置中,必须将docker客户端提升运行以进行连接。该错误也可能表明docker守护程序未运行。 参见'C:\ Program Files \ Docker \ docker.exe运行--help

它与高架Powershell配合使用。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

这是正常现象-默认情况下,本地命名管道用于Docker CLI与服务(即守护程序)进行通信。

出于开发目的,您可以为TCP access配置主机的Docker服务(“守护程序”),但这是最不安全的选择。只需将这段文本放在daemon.json文件中即可:

{
    "hosts": ["tcp://0.0.0.0:2375"]
}

完成此操作后,您可以与

docker --host tcp://1.2.3.4:2375 version

如果这是供生产使用,则可能需要查看容器编排系统。

一个中间立场是使用Attach-PSSession附加到远程计算机上的管理PowerShell会话。该仍然需要特权用户,但是可以远程工作。