Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
设置远程docker服务器时出错_Docker_Visual Studio Code_Docker Machine_Mern_Vscode Remote - Fatal编程技术网

设置远程docker服务器时出错

设置远程docker服务器时出错,docker,visual-studio-code,docker-machine,mern,vscode-remote,Docker,Visual Studio Code,Docker Machine,Mern,Vscode Remote,在我的Pi上,我在raspbian上安装了docker。这里有几个旁注: 我没有设置swarm,我停在docker info(docker信息)处,并且(和其他指南一样)成功地运行了hello world容器 idk,如果有关系的话,但本指南(与其他指南不同)让我编辑/etc/apt/sources.list并添加行:debhttps://download.docker.com/linux/raspbian/ 拉伸稳定 在我的开发机器(win 10)上,我曾经将docker配置和YML添加到我的

在我的Pi上,我在raspbian上安装了docker。这里有几个旁注:

  • 我没有设置swarm,我停在docker info(docker信息)处,并且(和其他指南一样)成功地运行了hello world容器
  • idk,如果有关系的话,但本指南(与其他指南不同)让我编辑
    /etc/apt/sources.list
    并添加行:
    debhttps://download.docker.com/linux/raspbian/ 拉伸稳定
  • 在我的开发机器(win 10)上,我曾经将docker配置和YML添加到我的mern stack应用程序中。然而,在本教程的多个地方,他们希望我运行docker命令,所以我不得不安装docker Desktop

    但是我不想使用本地容器,我想在我的Pi上使用远程容器。所以我曾经尝试设置我的远程docker

    然而,我得到一个错误:

    C:\Users\oweng>docker机器创建--驱动程序通用 --通用ip地址=192.168.1.2--通用ssh密钥“%HOMEPATH%/.ssh/id_rsa”--通用ssh用户=pi远程docker主机 正在运行预创建检查。。。正在创建计算机。。。(远程docker主机) 正在导入SSH密钥。。。等待机器运行时,这可能需要 几分钟。。。正在检测已创建实例的操作系统。。。 正在等待SSH可用。。。输入密钥的密码短语 'C:\Users\oweng.docker\machine\machines\remote docker host\id\u rsa': 输入密钥的密码短语 'C:\Users\oweng.docker\machine\machines\remote docker host\id\u rsa': 正在检测供应器。。。输入密钥的密码短语 'C:\Users\oweng.docker\machine\machines\remote docker host\id\u rsa': 创建计算机时出错:检测操作系统时出错:无法识别操作系统类型

    我用谷歌搜索了一下错误,但还没有找到解决办法

    此外,当检查我的Pi(docker服务器)上的侦听端口时,我看不到它正在运行

    pi@raspberrypi:~$sudo lsof-i-P-n | grep LISTEN xrdp sesm 390 根7u IPv6 14566 0t0 TCP[::1]:3350(侦听)sshd
    404根3u IPv4 17224 0t0 TCP*:22(侦听)sshd
    404根4u IPv6 17226 0t0 TCP*:22(侦听)xrdp
    406 xrdp 11u IPv6 17302 0t0 TCP*:3389(侦听)

    所以我觉得服务器可能没有运行?但似乎是这样

    pi@raspberrypi:~$systemctl状态docker● docker.服务-docker 已加载应用程序容器引擎:已加载 (/lib/systemd/system/docker.service;已启用;供应商预设:已启用) 有效:自周二2020-11-03 07:18:21太平洋标准时间起有效(运行);3h 35分钟 以前 文件:主PID:496(dockerd) 任务:13 CGroup:/system.slice/docker.service └─496/usr/bin/dockerd-H fd://--containerd=/run/containerd/containerd.sock

    11月3日07:18:14树莓果[496]: time=“2020-11-03T07:18:14.064113743-08:00”级别=警告消息=“您的 内核不支持cgroup blkio throttle。w Nov 03 07:18:14 树莓果[496]:time=“2020-11-03T07:18:14.064249212-08:00” level=warning msg=“您的内核不支持cgroup blkio 节流阀11月3日07:18:14树莓藤[496]: time=“2020-11-03T07:18:14.064373483-08:00”级别=警告消息=“您的 内核不支持cgroup blkio throttle。w Nov 03 07:18:14 树莓果[496]:time=“2020-11-03T07:18:14.066367493-08:00” level=info msg=“装载集装箱:开始。”11月3日07:18:17 树莓果[496]:time=“2020-11-03T07:18:17.612685200-08:00” level=info msg=“默认网桥(docker0)分配有IP 地址:11月3日07:18:18树莓果[496]: time=“2020-11-03T07:18:18.710629367-08:00”level=info msg=“装载 容器:完成。”11月3日07:18:20树莓果[496]: time=“2020-11-03T07:18:20.815943637-08:00”level=info msg=“Docker 守护进程“commit=4484c46 graphdriver(s)=overlay2 v Nov 03 07:18:20 树莓果[496]:time=“2020-11-03T07:18:20.822947178-08:00” level=info msg=“守护进程已完成初始化”11月3日07:18:21 raspberrypi systemd:已启动Docker应用程序容器引擎。 11月3日07:18:21树莓果[496]: time=“2020-11-03T07:18:21.273201136-08:00”level=info msg=“API侦听” on/var/run/docker.sock“

    更新1

    在这篇文章之后,我似乎能够让服务器运行起来。编辑docker.service文件。现在,我在尝试创建时遇到另一个错误

    C:\Users\oweng>docker机器创建--驱动程序通用 --通用ip地址=192.168.1.2:2137--通用ssh密钥“%HOMEPATH%/.ssh/id_rsa”--通用ssh用户=pi远程docker主机 正在运行预创建检查。。。正在创建计算机。。。(远程docker主机) 正在导入SSH密钥。。。等待机器运行时,这可能需要 几分钟。。。创建计算机时出错:等待计算机运行时出错 正在运行:超过最大重试次数(60次)

    更新2 BMitch的评论将我引向这两个教程,这两个教程似乎正是我想要做的
    我不会用
    码头工人机器来做那件事。对该工具的支持似乎正在消失,而且还有更简单的方法

    最简单的方法是将机器上的
    DOCKER\u HOST
    设置为远程节点的ssh设置:

    export DOCKER_HOST=ssh://user@host
    docker info # should now show the remote host if you have ssh access
    
    如果您发现自己在节点之间经常变化,我建议您设置一个上下文,然后不设置DOCKER_主机:

    unset DOCKER_HOST
    docker context create rpi --description "Pi" --docker "host=ssh://user@host"
    docker --context rpi info
    
    然后,您可以使用

    docker context use rpi
    
    并切换回本地/默认docker引擎

    docker context use default
    

    我觉得你可能会交换一些东西。我的docker主机是raspbian/linux。我的设备是windows。导出不是windows命令行命令。然而,我设置了一个环境变量(DOCKER_HOST),当我启动它并要求安装远程资源管理器时,VSCode就发现了这一点。这让我走得更远了,希望我能在这里找到剩下的。@owengerig我自己的桌面是Linux,所以我习惯于使用Linux命令。您可以在Windows上使用bash或WSL2来运行诸如导出之类的命令。或者在cmd/powershell中使用Windows等效程序。无论环境如何,
    docker上下文
    命令都将运行。