如题,这是一件很蛋疼的事情。

为了完成这一件事情,需要达成目标:

  1. Ubuntu GUI 必须要能够显示。
  2. Ubuntu 可以链接 USB Camera。

目标一

目标1很容易达成。

在 Win10 中安装一个 X11 Server,可以是 VcXsrv,可以是 Xming,比较不推荐 Xming,因为后面使用 pangolin 会发现 Xming 版本很难匹配。

推荐使用 MobaXterm,这是一个 free Xserver and tabbed SSH client for Windows。免费的非常好。

打开 MobaXterm 之后可以看到右上角有一个橘色 Xserver 的图标,点击开启 Xserver,图标变绿。鼠标放置在图标之上可以看到:

Stop X11 server (Current DISPLAY=XXX.XXX.XXX.XXX:0.0)

后面的 DISPLAY 就是在 client 端链接的环境变量。

在 Ubuntu container 中输入

export DISPLAY=XXX.XXX.XXX.XXX:0.0

或者直接在 Ubuntu container 的创建中使用 -e 选项,添加环境变量。

目标二

目标2很蛋疼。

可以在 Docker 的官网中看到 Docker 在 Windows 下是使用 Hyper-V (Windows 自带虚拟机软件) 创建一个虚拟机,在虚拟机中创建 containers。

而 Docker 在 Mac 下是使用 Orcale VM VirtualBox 创建虚拟机,在虚拟机中创建 containers。

所以,Docker 在非 Linux 环境下的工作方式是使用虚拟机软件做一个虚拟的 linux 系统,在 linux 系统中,创建 containers。

在 Docker 官网可以直接下载 Docker 或者 Docker Toolbox,下这两个行。区别在于 Docker 安装之后只有一个可执行文件,这个可执行文件创建 Docker 虚拟机只能在 Hyper-V 中创建;而 Docker Toolbox 包括 Docker Kitmatic (Docker images、containers 管理软件)、Oracle VM VirtualBox。

我以为使用 Docker Toolbox 可以使用 Oracle VM VirtualBox 作为虚拟机软件,然而并不是这样的。

所以还是继续使用 Hyper-V。

Hyper-V 可以添加设备,设备主要包括 Network Adapter 和 SCSI Controller。

我就希望能够使用 SCSI Controller 将我的 USB Camera 链接进去,然而并不行,这个东西只能添加存储设备。

查了一下 SCSI 确实只能添加存储设备。

随后看到了可以使用一个叫 USB Redirector 的商业软件将 USB 设备映射到网络设备,网络设备越过 Hyper-V,在虚拟机内部再将网络设备映射回 USB 设备。

然而这东西需要70多刀,没钱。。。

在 GitHub 上搜索,USB Redirector 搜到的代码都是在 linux 下使用的,在 Windows 下没有办法。

还是直接使用 VirtualBox 吧。

秋嘚嘛嘚,我再找找,Google “USB Redirector Alternatives”,找到了这个链接:
https://alternativeto.net/software/usb-redirector/

里面有几种替换方案:FlexiHub、VirtualHere、USB/IP、USB over Network、USB Network Gate。

先从免费开源的USB/IP开始弄,然而看了主页发现这东西是从 Linux 到 Windows 的映射,没有反方向的,扑街。这个链接可以佐证我的判断,https://sourceforge.net/p/usbip/discussion/418507/thread/6877196c/

FlexiHub 需要购买,而且是账号登陆,连破解都没有办法。

Windows::Docker::Ubuntu 做 SLAM的更多相关文章

  1. windows、ubuntu下eclipse搭建java、Python环境问题总结

    前两篇博文分别讲述了如何在windows.ubuntu下用eclipse搭建java.python环境,下面就针对本人遇到的问题做一个总结. 一.windows下关于java环境变量JAVA_HOME ...

  2. remote desktop connect btw Mac, Windows, Linux(Ubuntu) Mac,Windows,Linux之间的远程桌面连接

    目录 I. 预备 II. Mac连接Windows III. Windows连接Mac IV. Windows连接Ubuntu V. Mac连接Ubuntu VI. Ubuntu连接Mac VII, ...

  3. Windows和Ubuntu双系统,修复UEFI引导的两种办法

    查看ubuntu是否是从 efi/uefi 启动的方法:  若 /sys/firmware/efi 存在则是,否则不是.shell命令: [ -d /sys/firmware/efi ] && ...

  4. 老司机实战Windows Server Docker:4 单节点Windows Docker服务器简单运维(下)

    上篇中,我们主要介绍了使用docker-compose对Windows Docker单服务器进行远程管理,编译和部署镜像,并且设置容器的自动启动.但是,还有一些重要的问题没有解决,这些问题不解决,就完 ...

  5. VNC实现Windows远程访问Ubuntu 16.04(无需安装第三方桌面)

    本文主要是讲解如果理由VNC实现Windows远程访问Ubuntu 16.04,其实网上有很多类似教程,但是很多需要安装第三方桌面(xfce桌面等等),而且很多人不太喜欢安装第三方桌面,很多人像笔者一 ...

  6. VNC实现Windows远程访问Ubuntu 16.04(无需安装第三方桌面,直接使用自带远程工具)

    本文主要是讲解如果理由VNC实现Windows远程访问Ubuntu 16.04,其实网上有很多类似教程,但是很多需要安装第三方桌面(xfce桌面等等),而且很多人不太喜欢安装第三方桌面,很多人像笔者一 ...

  7. 利用 Intel Realsense做SLAM开发(一)

    最近手里拿到一台Realsense D435,就是这个: https://click.intel.com/intelr-realsensetm-depth-camera-d435.html 所以准备拿 ...

  8. 安装Windows和Ubuntu双系统2

    安装Windows和Ubuntu双系统 0.552016.12.10 15:54:41字数 2101阅读 6644 这几天开始动手做毕设啦,打算好好过把Linux瘾,接下来便是这两天我在联想电脑上安装 ...

  9. 安装Windows和Ubuntu双系统

    发现关注消息 安装Windows和Ubuntu双系统     安装Windows和Ubuntu双系统 0.552016.12.10 15:54:41字数 2101阅读 6644 这几天开始动手做毕设啦 ...

随机推荐

  1. java入门--4110:圣诞老人的礼物-Santa Clau’s Gifts

    学习了一下java的语法,就用poj上的题目做作练习,好更快的熟悉常用的java语法. 题目在这里 http://bailian.openjudge.cn/practice/4110/ import ...

  2. HDU 2051 Bitset

    http://acm.hdu.edu.cn/showproblem.php?pid=2051 Problem Description Give you a number on base ten,you ...

  3. Ubuntu 14.04 installation & bugs on Alienware-13

    列一下Alienware 13笔记本配置: Processor: Intel Core 5th Generation i5-5200U Processor (3M Cache, up to 2.70 ...

  4. Windows 2012r2 以及以上版本远程提示错误的解决方法

    部分机器远程时会提示如图: 其实解决问题非常简单 .... 为了防止不会操作 完整的截图展示. 服务器下面进行处理 打开我的电脑 属性 打开远程设置 将框中的选项取消掉 然后就可以了.

  5. android管理SD卡 mksdcard

    在创建Android模拟器的时候,会创建一个虚拟的sd卡.我们还可以通过mksdcard命令创建sd卡,在运行模拟器的时候,可以选择具体的sd卡. 1.创建sd卡: mksdcard [-l labl ...

  6. delphi checklistbox用法

    在Delphi中checklistbox中高亮选中(不论是否Checked)能够进行操作么?删除,上下移动等等 删除:CheckListBox.DeleteSelected; 上下移: CheckLi ...

  7. hdwiki 前后台版权信息在哪修改

    hdwiki 前台copyright 信息在 view/default/footer.htm 搜索footer-phdwiki 后台copyright 信息在 view/default/admin_m ...

  8. 洛谷P3950 部落冲突(LCT)

    洛谷题目传送门 最无脑LCT题解,Dalao们的各种算法都比这个好多啦... 唯一的好处就是只管码代码就好了 开战cut,停战link,询问findroot判连通性 太无脑,应该不用打注释了.常数大就 ...

  9. 认清Android框架 MVC,MVP和MVVM

    编者按:现在很多时候,我们都是面向搜索(或 Google 或百度).GitHub 编程,那么,在早期没有互联网的情况下,该如何学习编程,成为一名真正的开发者?亦或是作为一名小白,如何进入互联网编程时代 ...

  10. 学习Spring Boot:(十六)使用Shiro与JWT 实现认证服务

    前言 需要把Web应用做成无状态的,即服务器端无状态,就是说服务器端不会存储像会话这种东西,而是每次请求时access_token进行资源访问.这里我们将使用 JWT 1,基于散列的消息认证码,使用一 ...