本人硬件环境:
CPU:Intel Core i7 6700
GPU:NVIDIA GTX 1060 6G
内存:SAMSUNG DDR4 32GB
硬盘:双SSD 256G,双系统(windows,ubuntu)
注意,下面除标题,跟前面加#号的,都是在命令行输入的命令。
第一、显卡与GPU安装,详见我另一篇文档(Ubuntu 20.04-Pytorch-GPU系统环境搭建指南)
?
第二、Docker安装 Apollo 6.0+ 依赖于Docker 19.03版本及以上,安装方式如下:
#首先,需要安装依赖并卸载旧版本 # 安装依赖项 sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
# 卸载旧版本(可能不存在) sudo apt-get remove docker docker-engine docker-ce docker.io
#随后,添加docker官方提供的密钥并更新软件源 # 添加gpg密钥 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
# 设置stable存储库 sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
# 更新软件源 sudo apt-get update
#之后,直接安装最新版本的docker即可。 # 安装docker sudo apt-get install docker-ce docker-ce-cli containerd.io
#安装完成后还需要添加权限 #添加docker用户组 sudo groupadd docker
#将登陆用户加入到docker用户组中 sudo gpasswd -a $USER docker
#更新用户组 newgrp docker
#设置开机自启动 sudo systemctl start docker && sudo systemctl enable docker sudo systemctl enable docker.service sudo systemctl enable containerd.service
第三、NVIDIA Container Toolkit #基于Apollo的CUDA的docker镜像需要依赖于NVIDIA Container Toolkit。使用如下指令进行安装
distribution=$(. /etc/os-release;echo $ID$VERSION_ID) curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add - curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list sudo apt-get -y update sudo apt-get install -y nvidia-docker2
#随后,重启Docker完成应用。 sudo service docker start
第四、安装Apollo 2.1 下载源码
地址:apollo: Apollo (阿波罗)是一个开放的、完整的、安全的平台,将帮助汽车行业及自动驾驶领域的合作伙伴结合车辆和硬件系统,快速搭建一套属于自己的自动驾驶系统。
选6.0版本,apollo-6.0.0.zip,下载后,解压至根目录下,并改目录名为:apollo
#(可选)为方便起见,可以在Apollo的根目录运行以下命令来设置指向该目录的环境变量
#APOLLO_ROOT_DIR: cd apollo echo "export APOLLO_ROOT_DIR=$(pwd)" >> ~/.bashrc ?&& source ~/.bashrc
2.2 启动Docker #在源码根目录执行docker下载镜像脚本:
cd docker/scripts bash dev_start.sh -g cn
#此步骤时间有点长,请耐心等待完成,成功后将显示如下图:

?
2.3 编译 #在源码根目录运行如下脚本进入Apollo的Docker容器
cd docker/scripts bash dev_into.sh?
#切换到root权限
sudo -s
#执行如下指令进行编译: # 模式编译(GPU) bash apollo.sh build_opt_gpu # 如果没有GPU,则选模式编译(CPU) bash apollo.sh build_cpu

?#本人第一次编译失败,再执行bash apollo.sh build_opt_gpu,成功了。如下图

?
第五、启动Dreamview
#完成编译后,即可在Docker环境下启动Dreamview进行测试: bash scripts/bootstrap.sh

?
#启动成功后可以在浏览器中打开链接进行查看Dreamview:http://localhost:8888/
http://localhost:8888/

?
第六、播放record数据
#首先需要下载record数据包(类似于ROS中的bag数据包): wget https://apollo-system.cdn.bcebos.com/dataset/6.0_edu/demo_3.5.record
#随后使用cyber RT运行播放数据 cyber_recorder play -f demo_3.5.record --loop

?#浏览器中打开链接进行查看Dreamview:
http://localhost:8888/

完成!?
|