Windows::Docker::Ubuntu 做 SLAM
如题,这是一件很蛋疼的事情。
为了完成这一件事情,需要达成目标:
- Ubuntu GUI 必须要能够显示。
- 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的更多相关文章
- windows、ubuntu下eclipse搭建java、Python环境问题总结
前两篇博文分别讲述了如何在windows.ubuntu下用eclipse搭建java.python环境,下面就针对本人遇到的问题做一个总结. 一.windows下关于java环境变量JAVA_HOME ...
- 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, ...
- Windows和Ubuntu双系统,修复UEFI引导的两种办法
查看ubuntu是否是从 efi/uefi 启动的方法: 若 /sys/firmware/efi 存在则是,否则不是.shell命令: [ -d /sys/firmware/efi ] && ...
- 老司机实战Windows Server Docker:4 单节点Windows Docker服务器简单运维(下)
上篇中,我们主要介绍了使用docker-compose对Windows Docker单服务器进行远程管理,编译和部署镜像,并且设置容器的自动启动.但是,还有一些重要的问题没有解决,这些问题不解决,就完 ...
- VNC实现Windows远程访问Ubuntu 16.04(无需安装第三方桌面)
本文主要是讲解如果理由VNC实现Windows远程访问Ubuntu 16.04,其实网上有很多类似教程,但是很多需要安装第三方桌面(xfce桌面等等),而且很多人不太喜欢安装第三方桌面,很多人像笔者一 ...
- VNC实现Windows远程访问Ubuntu 16.04(无需安装第三方桌面,直接使用自带远程工具)
本文主要是讲解如果理由VNC实现Windows远程访问Ubuntu 16.04,其实网上有很多类似教程,但是很多需要安装第三方桌面(xfce桌面等等),而且很多人不太喜欢安装第三方桌面,很多人像笔者一 ...
- 利用 Intel Realsense做SLAM开发(一)
最近手里拿到一台Realsense D435,就是这个: https://click.intel.com/intelr-realsensetm-depth-camera-d435.html 所以准备拿 ...
- 安装Windows和Ubuntu双系统2
安装Windows和Ubuntu双系统 0.552016.12.10 15:54:41字数 2101阅读 6644 这几天开始动手做毕设啦,打算好好过把Linux瘾,接下来便是这两天我在联想电脑上安装 ...
- 安装Windows和Ubuntu双系统
发现关注消息 安装Windows和Ubuntu双系统 安装Windows和Ubuntu双系统 0.552016.12.10 15:54:41字数 2101阅读 6644 这几天开始动手做毕设啦 ...
随机推荐
- Top 10 Javascript MVC 框架
在网上偶然看到了,几种MVC框架各有优缺点,但Backbone和Ember的呼声相对更高-大家参考一下哈- http://codebrief.com/2012/01/the-top-10-javasc ...
- 《Linux内核设计与实现》第18章读书整理
第十八章.调试 18.1 准备开始 如果bug能重现的话,将会有很大的帮助. 18.2 内核中的bug Bug多种多样,产生的原因可以有无数的原因,表象也变化多端. 从隐藏在源代码中的错误到展现在目击 ...
- YISMILE微信小程序使用说明
使用说明: 程序名称:易校(YISMILE) 开发团队:KNY三人组 团队logo: 程序logo: 程序功能及使用说明: “失物招领”界面可以浏览发布的失物信息: “发布信息”界面用户可以针对物品类 ...
- 基于SSH框架的学生选课质量属性分析
系统:学生选课系统 框架:SSH(Struts2+Spring+Hibernate) 我做的是基于SSH框架的学生选课系统.学生选课系统的特性:①系统响应时间短,能够快速调出课程数据供学生选课提交.② ...
- Leetcode题库——46.全排列
@author: ZZQ @software: PyCharm @file: permute.py @time: 2018/11/15 19:42 要求:给定一个没有重复数字的序列,返回其所有可能的全 ...
- Day Two
站立式会议 站立式会议内容总结 442 完成了计划列表和toolbar的事件监听部分 遇到问题:父组无法实现事件监听,只能实现点击折叠.展开的功能. 331 学习form中list数据添加 遇到的问题 ...
- [UWP 开发] 一个简单的Toast实现
Toast简介 在安卓里Toast是内置原生支持,它是Android中用来显示显示信息的一种机制.它主要用于向用户显示提示消息,没有焦点,显示的时间有限,过一定的时间就会自动消失.在UWP中虽然没有原 ...
- VSTS写单元测试
用VSTS写单元测试 许多应用程序都会用到“用户”类型,今天我要用的是ConsoleApplicatio ...
- Ubuntu安装jdk,正确配置环境变量
作为一个Linux新手,在写这篇博客之前,装了几次jdk,好多次都是环境变量配置错误,导致无法登录系统.经过几天的研究,今天新装系统,从头来完整配置一遍 系统版本:Ubuntu 16.04 JDK版本 ...
- Beta冲刺预备
作业链接 Beta冲刺随笔集 github地址 讨论组长是否重选的议题和结论 在Alpha阶段我们由于没有项目经验,很多技术都仅限于书本上的知识,没有真正实践过,所以出现各种各样的问题,在组长的带领下 ...