在Windows Server 2016上安装Portainer

3

我按照以下步骤在我的主机端口9000上创建了一个Portainer容器。

但是我遇到了下面的错误:

C:\Program Files\Docker\docker.exe: Error response from daemon: named pipe mounts are not supported on this version of Windows.

重现步骤:

  1. Allow Docker Connection Through Firewall by this:

    netsh advfirewall firewall add rule name="Docker" dir=in action=allow protocol=TCP localport=2375 enable=yes profile=domain,private,public
    
  2. Configure Docker Deamon to listen on both pipe and TCP:

    2.1. StopService docker

    2.2. dockerd --unregister-service

    2.3. dockerd -H npipe:// -H 0.0.0.0:2375 --registerservice

    2.4. Start-Service docker

  3. Pull portainer image: docker pull portainer/portainer

  4. Creating a volume: docker volume create portainer_data

  5. Run Portainer

    docker run -d --name portainer -p 9000:9000 --mount type=npipe,source=\\.\pipe\docker_engine,target=\\.\pipe\docker_engine --mount type=volume,source=portainer_data,target=C:\data portainer/portainer
    
1个回答

3

此版本的Windows不支持命名管道挂载。

这个错误意味着您的Docker版本不支持将命名管道绑定到容器中。

首先,您需要检查系统上的Docker版本,可以使用docker version命令来完成。

然后,您需要确保您的Docker版本大于等于17.09,并使用以下解决方案之一:

  • Docker版本= 17.09,将命名管道作为卷进行绑定

docker run -d --name portainer -p 9000:9000 -v \\.\pipe\docker_engine:\\.\pipe\docker_engine --mount type=volume,source=portainer_data,target=C:\data portainer/portainer

  • Docker版本>= 18.03,支持命名管道绑定,您的命令应该可以正常工作。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接