一、错误现象

在docker内运行速腾激光雷达驱动程序时,出现错误: ERRCODE_MSOPTIMEOUT






二、问题原因

    对于速腾激光雷达驱动程序,在激光雷达端配置了详细的参数,最主要的就是激光雷达的IP和PC机的IP,一旦配置完成,

那PC机的实际IP必须与激光雷达里配置的Host IP一致,否则PC端收不到点云数据.


而docker共有4中网络模式((Bridge,Host,Container,None)),且默认为桥接模式,桥接模式将Docker网络与Host网络通过虚拟网桥隔离,从而导致不满足执行驱动程序的PC环境IP不等于激光雷达配置的PC IP.









二、解决办法

     进入docker时,指定网络模式为host模式:--net=host,此时docker与host共享网络设备,此时用ifconfig分别查看docker和host的网络设备,发现docker内的网络设备及IP地址与Host端的一致!

docker run -it  --net=host --rm --privileged -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix -v "$MOUNT_HOST_DIR":$MOUNT_DOCKER_DIR --name $MOUNT_DOCKER_NAME $DOCKER_IMAGE_NAME:$DOCKER_IMAGE_TAG_NAME  /bin/bash












标签: none

评论已关闭