6、docker中机器人开发环境搭建

 

操作环境及软硬件参考配置如下:

6.1、使用jupyter lab访问docker

1、进入容器,参见【5、进入机器人的docker容器】,执行如下命令:

注意:在docker容器中使用 jupyter lab时必须以host的联网方式运行docker容器:运行容器时加入"--net=host"参数

2、其他设备查看,在windows或者ubuntu浏览器中打开(必须在同一个局域网下,192.168.2.102为docker容器内的IP地址)

image-20230424173324001

 

下面目录是机器人的项目路径:

/root/yahboomcar_ws

image-20230425101243048

 

 

6.2、使用vscode访问docker

这里以windows中配置vscode访问docker容器为例讲解,ubuntu中访问docker的步骤也基本一致。

 

6.2.1、远程配置

参见【六、 Linux操作系统 ---- 3. 远程控制】章节

确保windows能远程登录到docker的宿主机【小车】上:

 

6.2.2、vscode配置

 

6.2.2.1、下载安装vscode

vscode官网:https://code.visualstudio.com/,下载windows版本的安装即可

 

6.2.2.2、vscode配置ssh远程登录到宿主机

1、打开vscode,点击左边下面箭头的图标,然后在搜索框中输入remote,选择Remote Development插件,点击安装即可安装该插件

image-20230424183009372

vscode默认安装之后是英文版的,可以安装中文插件来汉化:

image-20230424182205246

 

2、在vscode中按快捷键【ctrl + shift + p】打开命令输入窗口,输入:remote,然后按照如下图的指引登录到远程宿主机【小车】上。

image-20230425091020733

image-20230425091230849

image-20230425091248247

image-20230425091304318

image-20230425091323608

image-20230425091358042

image-20230425091415820

如何看到上图的画面,表示已经成功远程登录到宿主机上。

 

6.2.2.3、进入机器人容器

参见【5、进入机器人的docker容器】章节的教程进入。

 

6.2.2.4、vscode远程宿主机配置docker环境

1、在远程宿主机【小车】上安装docker插件

image-20230425091515978

 

2、安装完成后在左侧的导航栏会出现一个docker的图标

image-20230425091532747

 

3、点击docker图标

image-20230425093400792

 

4、右击正在运行的容器,按下图操作:

image-20230425093448428

image-20230425093609630

 

5、会新打开一个窗口,看到如下表示已经进入到容器内

image-20230425093643476

 

6、打开文件夹

image-20230425093748086

image-20230425093730162

image-20230425093808074

image-20230425093900096

 

7、同样的,在容器中也可以安装我们需要的插件来方便我们开发

image-20230425102200355

除了ros,这里推荐安装的插件有:

img

完成以上步骤,就可以操作容器中的代码文件来开发学习了。

 

6.2.2.5、配置免密登录

上面的步骤中可能某些步骤是需要输入宿主机的密码的,这里再优化一下,配置免密登录。

1、首先测试在windows使用ssh登录到宿主机【小车】上,指令如下:

这时候会发现是需要输入宿主机密码的

 

2、接下来配置免密登录

(1)添加环境变量

打开环境变量属性页面,在用户变量部分点击新建,变量为HOME,值为C:\Users\name,其中name为用户名,可以自行查看自己电脑的用户名,之后生成的密钥对默认保存在这个目录下。 在这里插入图片描述

 

(2)生成密钥对

打开cmd命令行,在ssh程序所在目录运行,或者添加系统环境之后随处运行【ssh-keygen -t rsa】这条命令用来生成密钥,随后一路回车,当看到一幅矩形图生成,那么密钥生成成功。此时在用户目录的.ssh文件夹下会多出两个文件即id_rsa(私钥)、id_rsa.pub(公钥)

img

 

(3)将公钥添加到宿主机上

同样的打开cmd命令行,输入

这条命令首先登录到宿主机上,然后将本机即win下的公钥添加到宿主机账户个人目录下,从而实现免密码登录。注意这一步需要输入宿主机账户的密码。

 

(4)验证

再次测试在windows使用ssh登录到宿主机【小车】上,指令如下:

这时候会发现已经不需要输入密码了。

重启一下vscode,需要输入密码的地方也不在需要输入密码了。