Apollo安装的前提:
1) Ubuntu 18.04
Ubuntu18.04的安装可参见安装教程
2) NVIDIA 显卡驱动
这个相对简单一些,网上也有很多教程,可参考如下代码:
sudo apt-get update
sudo apt-add-repository multiverse
sudo apt-get update
sudo apt-get install nvidia-driver-460
接着再执行语句:
nvidia-smi
如果正确安装后会出现显卡相关内容的界面
NOTE:
1)首先Apollo不支持3080显卡,太高级了,至少Apollo6.0不支持
2)如果是虚拟机,因为虚拟机无法虚拟NVIDIA显卡,所以此此步骤务必跳过,否则将导致后续启动 Apollo 开发容器失败。
3)安装NVIDIA显卡驱动需要先禁用nouveau驱动
在终端执行:
sudo gedit /etc/modprobe.d/blacklist.conf
在打开的文件末尾添加如下内容后保存再重启系统:
blacklist nouveau
options nouveau modeset=0
重启系统后在终端输入:
lsmod | grep nouveau
没有任何输出即表示禁用成功。
3)Docker 引擎(此步骤可在Apollo安装步骤中完成——3.1)
4)安装 NVIDIA 容器工具(此步骤可在Apollo安装步骤中完成——3.2)
以上均已配置完毕。
可在箭头所示的mater下拉框中选择相应版本
进入到下载好的apollo-6.0/docker/setup_host路径下,执行:
sudo bash install_docker.sh
Docker安装完成后,重启电脑:
sudo reboot
重启后:
docker --version
如图即为安装成功。
另外,因为容器是一个独立于系统的另一个环境,为了能够在Docker中也能够使用GPU资源,我们还需要安装nvidia-docker。
wget -P /tmp https://github.com/NVIDIA/nvidia-docker/releases/download/v1.0.1/nvidia-docker_1.0.1-1_amd64.deb
sudo dpkg -i /tmp/nvidia-docker*.deb && rm /tmp/nvidia-docker*.deb
验证是否安装成功:
nvidia-docker run --rm nvidia/cuda:9.0-devel nvidia-smi
博主另外提供安装方式供参考:
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 update
sudo apt-get install -y nvidia-docker2
sudo systemctl restart docker
选择其一就好啦。
cd apollo
:bash docker/scripts/dev_start.sh
此过程此过程需要下载很多image,耗时较长,成功后会显示“[OK], Enjoy!”
sudo bash docker/scripts/dev_into.sh
进入container之后,编译Apollo,分为两种情况有GPU和无GPU:
1)有GPU
bash apollo.sh build_opt_gpu
2)无GPU
sudo bash apollo.sh build_cpu
此过程耗时较长,编译过程中可能会出现一些warning,如:warning: ‘DimsNCHW’ is deprecated
,不用担心,不影响后续过程的使用。
成功时会提醒:Done building apollo. Enjoy!
bash scripts/bootstrap.sh
若出现permission denied
,属于权限问题,利用chmod
授权:
sudo chmod +x scripts/bootstrap.sh
若还无法执行,
sudo chmod +x scripts/ -R
Scripts目录下全部授权。
执行成功后显示:
Dreamview is running at http://localhost:8888
打开Chrome或者FireFox浏览器,在地址栏输入http://localhost:8888
即可访问Apollo Dreamview,如下图所示:
cd docs/demo_guide/
python3 record_helper.py demo_3.5.record
等待时间会略长。
cyber_recorder play -f demo_3.5.record --loop
选项 --loop
用于设置循环回放模式.
停止container:
退出容器: exit
或者在宿主机中执行:
使用docker stop $(docker ps -aq)
停止docker的所有容器
或者使用docker stop apollo_xxxxx
停止某个apollo容器
切换进入APOLLO
目录
bash docker/scripts/dev_start.sh
bash docker/scripts/dev_into.sh
bash apollo.sh build_opt_gpu
bash scripts/bootstrap.sh