写在前面:vscode的dev_container插件可以实现在vscode进入正在运行的容器开发,甚至ssh后可连接远程服务器下的容器
请先启动容器后再往下看!!
请先启动容器后再往下看!!
请先启动容器后再往下看!!
目录
1.在root主目录中的 .bashrc 文件最后加入这段代码后vsode才能在root用户下运行
1.安装dev_container 即可在vscode中打开正在运行的容器 编辑
4.1:最好是以root用户登录,root登录需要配置sshd参数,如果不会请往下看:
6.远程资源管理器切换至container,如果未启动container请先前往命令行启动
7.安装你所需要的插件:C/C++、catkin-tools、ROS、python .....
一、切换root用户进入vscode
1.在root主目录中的 .bashrc 文件最后加入这段代码后vsode才能在root用户下运行
alias code='/usr/share/code/code . --no-sandbox --unity-launch'
2.source下使配置信息生效
source .bashrc
3.在root用户下进入vscode
code .
启动后右下角有此警告为成功。
二、本地容器开发环境配置
如果不使用root进入vscode会无法使用ROS的插件及快捷键编译。。干脆就直接使用root权限简单粗暴!
1.安装dev_container 即可在vscode中打开正在运行的容器
也可顺便安装其他插件:ROS、C/C++、python、chinese、catkin_tools......
2.进入容器(先确保容器为启动状态)
3.创建工作空间
madir -p catkin_ws/src #创建工作空间
cd catkin_ws #进入工作空间目录
catkin_make #编译生成ROS工作空间
4.vscode 中编译 ros
4.1:快捷键 ctrl + shift + B 调用编译,选择:catkin_make:build
4.2:在.vscode中创建
tasks.json(如果已经存在直接修改就行)
{
// 有关 tasks.json 格式的文档,请参见
// https://go.microsoft.com/fwlink/?LinkId=733558
"version": "2.0.0",
"tasks": [
{
"label": "catkin_make:debug", //代表提示的描述性信息
"type": "shell", //可以选择shell或者process,如果是shell代码是在shell里面运行一个命令,如果是process代表作为一个进程来运行
"command": "catkin_make",//这个是我们需要运行的命令
"args": [],//如果需要在命令后面加一些后缀,可以写在这里,比如-DCATKIN_WHITELIST_PACKAGES=“pac1;pac2”
"group": {"kind":"build","isDefault":true},
"presentation": {
"reveal": "always"//可选always或者silence,代表是否输出信息
},
"problemMatcher": "$msCompile"
}
]
}
4.3:此时你的.vscode应该有如下文件:
5.参考文档:
三、远程容器开发环境配置
如果不使用root进入vscode会无法使用ROS的插件及快捷键编译。。干脆就直接使用root权限简单粗暴!
1.切换root用户进入vscode
2.安装插件Remote Development
3.远程资源管理器切换至ssh界面
4. 新建ssh连接,或者点击齿轮编辑ssh配置
Host rspi #名字可以随便取
HostName 192.168.222.224 #远程ip
User root #用户名
Port 22 #端口
4.1:最好是以root用户登录,root登录需要配置sshd参数,如果不会请往下看:
sudo apt-get update #两个主机都安装openssh
sudo apt-get install openssh-server #安装ssh
#远程主机上执行并编辑sshd参数
sudo passwd root #设置root密码
sudo vim /etc/ssh/sshd_config
#去掉这几行的注释并改成yes
Port 22 #可以自定义
PermitRootLogin yes
PubkeyAuthentication yes
启动sshd服务
systemctl start sshd.service
检查sshd服务状态
systemctl status sshd.service
关闭sshd服务
systemctl stop sshd.service
5.点击左下角的远程窗口创建一个ssh链接
6.远程资源管理器切换至container,如果未启动container请先前往命令行启动
此时可以双击启动你所需要使用的容器!!
7.安装你所需要的插件:C/C++、catkin-tools、ROS、python .....
配置ROS参考文档:
完结!!