《Apollo6.0:安装教程与启动测试》

新建一个文件夹code,将Apollo源码放在code文件夹当中。
apollo官方Github网址:https://github.com/ApolloAuto/apollo

1、拉取Apollo镜像,指令:sudo bash docker/scripts/dev_start.sh或者sudo bash docker/scripts/dev_start.sh -C
加-C选项表示从国内服务器下载镜像,但有时会出现下载镜像失败的情形,如遇到该问题,可将-C选项去掉,直接从美国服务器下载镜像。
《Apollo6.0:安装教程与启动测试》_第1张图片拉取Aplolo镜像成功显示如下:
《Apollo6.0:安装教程与启动测试》_第2张图片 2、 进入Apollo的docker环境容器(在已拉取Apollo镜像成功之后才可打开Apollo的docker环境容器),需要加sudo,会进入root环境下,如果不加sudo,也可以进入apollo的docker环境和运行后面的demo,但是在运行demo的时候会报权限相关的错误。

sudo bash docker/scripts/dev_into.sh

加 sudo的:
在这里插入图片描述不加 sudo 的:
在这里插入图片描述3、进入Apollo的docker容器编译Apollo源代码。在apollo根目录下运行apollo.sh脚本。
选择带有GPU的最优化编译。
sudo bash docker/scripts/dev_into.sh # 如已进入Apollo的docker容器环境,则不需要执行此句。
./apollo.sh clean # 如果是第二次编译则需要执行一次clean。
./apollo.sh build_opt_gpu # 带有GPU的编译用build_opt_gpu,无独显的用build_opt编译。
编译成功的标志:
《Apollo6.0:安装教程与启动测试》_第3张图片4、打开Dreamview页面窗口:使用start或者restart打开。
《Apollo6.0:安装教程与启动测试》_第4张图片关掉Dreamview页面窗口,使用stop。
在这里插入图片描述在浏览器输入 http://localhost:8888 打开Dreamview,可以看到如下界面:
《Apollo6.0:安装教程与启动测试》_第5张图片
5、运行demo:
1) 首先下载record包(相当于ros中的bag包),如demo_3.5.record,将其放在自己指定的位置下,如/home/hanno/code/apollo/docs/demo_guide/demo_3.5.record
2) 运行指令:
sudo bash docker/scripts/dev_into.sh # 进入apollo的docker环境
source cyber/setup.bash # 配置Cyber的环境变量,相当于ros的source devel/setup.bash
cyber_recorder play -f docs/demo_guide/demo_3.5.record -l # 运行demo的record包
《Apollo6.0:安装教程与启动测试》_第6张图片爱心提示:在进入apollo容器时要加sudo,不加sudo的话demo也可以运行,但是有报一些权限相关的错误。如[cyber_recorder]get shm failed. Error: permission denied.
[cyber_recorder]create shm failed, can’t write now.
进入apollo的docker环境时不加sudo之后运行demo出现的报错,如下:

《Apollo6.0:安装教程与启动测试》_第7张图片解决方法是在进入apollo的docker容器时加sudo。

sudo bash docker/scripts/dev_into.sh
source cyber/setup.bash
cyber_recorder play -f docs/demo_guide/demo_3.5.record -l

运行成功:
在Dreamview页面可以看到如下运行情况,则可认为demo运行成功:
在浏览器输入 http://localhost:8888 打开Dreamview,
《Apollo6.0:安装教程与启动测试》_第8张图片
6、 最后,停止container。运行以下命令,可以停止所有docker。
exit
sudo docker stop $(docker ps -aq)
在这里插入图片描述《Apollo6.0:安装教程与启动测试》_第9张图片

你可能感兴趣的:(Apollo6.0教程,docker,容器,运维)