您现在的位置是:首页 >技术杂谈 >《深蓝学院多传感器融合》第一章——docker环境配置网站首页技术杂谈
《深蓝学院多传感器融合》第一章——docker环境配置
1.安装配置Docker以及Docker-Compose
在开始使用前,首先需要在本地配置Docker
以及Docker-Compose
环境.
1.1安装Docker
请参考Docker官方文档完成Docker
环境的安装
安装完成后, 还需要进行如下操作
, 以保证环境的易用性:
将当前用户加入Docker Group
为了能在非sudo
模式下使用Docker
, 需要将当前用户加入Docker Group
.
- 执行命令:
sudo usermod -aG docker $USER
- 为了使上述变更生效,请先Logout,再Login
1.2安装Docker-Compose
Docker-Compose
是基于Docker解决方案的Orchestrator.
请参考Docker Compose官方文档完成Docker-Compose
环境的安装
2.获取镜像
在安装完成Docker
以及Docker-Compose
之后,需要从阿里云
源上获得所需镜像.
# login to Sensor Fusion registry
docker login --username=937570601@qq.com registry.cn-shanghai.aliyuncs.com
# download images:
docker pull registry.cn-shanghai.aliyuncs.com/shenlanxueyuan/sensor-fusion-workspace:bionic-cpu-vnc
密码: shenlansf20210122
2.1配置dockerfile、文件夹目录配置
配置dockerfile
启动docker需要配置docker-compose文件,新建一个docker-compose.yml,复制以下内容:
version: ‘3.4’
services:
cpu development:
workspace-bionic-cpu-vnc:
build:
context: docker
dockerfile: cpu.Dockerfile
network: host
image: registry.cn-shanghai.aliyuncs.com/shenlanxueyuan/sensor-fusion-workspace:bionic-cpu-vnc
container_name: sensor-fusion-workspace-cpu1
privileged: true
environment:
# set VNC login password here:
- VNC_PASSWORD=sensorfusion
volumes:
# mount your workspace here:
- $PWD/workspace:/workspace
ports:
# HTML5 VNC:
- 40080:80
# standard VNC client:
- 45901:5901
# supervisord admin:
- 49001:9001
# ROS master:
- 11311:11311
配置目录环境
在docker-compose.yml的目录下新建一个workspace,这个目录可以在docker环境下看到,只要把本地文件放到文件夹下就可以在docker中看到
![[Pasted image 20250208154254.png]]
2.2启动实例
,启动Terminal, 执行命令, 启动Docker Workspace:
docker-compose down && docker-compose up
成功启动后, 命令行输出如下:
2.3Service Health Check
然后打开浏览器, 访问URLhttp://localhost:49001/
, 默认账号/密码为sensorfusion/sensorfusion
, 确保所有服务成功启动.
若所有服务成功启动, 系统状态如下图所示:
编译作业
请将作业所需的源代码
与数据
, 分别放到当前workspace/assignments
与workspace/data
目录下. Docker Workspace会将当前Repoworkspace
文件夹映射到Docker Instance/workspace
目录下.
可在Docker Workspace中执行如下命令, 确保两者–当前Repo workspace文件夹
与Docker Instance /workspace
文件夹–的一致性
常见问题
- Docker运行时默认用户为
root
, 运行过程中可能导致当前Repo workspace文件夹
的User以及Group变更为root
, 从而使本地文件IO操作因Permission Denied
失败. 解决方案: 使用chown命令, 变更User-Group:
sudo chown [CURRENT_USER]:[CURRENT GROUP] workspace