Skip to content

ebesin/yrdocker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

yrdocker

使用yrdocker镜像

准备工作

  1. 在宿主机中配置,输入以下命令

    $ sudo apt install x11-xserver-utils	#安装xserver-utils工具
    
    $ xhost +	#允许所有客户端访问xserver服务
  2. 拉取镜像到本地

    $ docker pull ebesin/yrdocker:latest

使用镜像

  1. yrdocker镜像为基础层启动容器

    $ docker run -dit --name yrdocker \
    -v /tmp/.X11-unix:/tmp/.X11-unix -v /etc/localtime:/etc/localtime:ro \
    --privileged -e DISPLAY=$DISPLAY --net=host\
    --mount type=bind,source=/home/dwayne/workspace/src,target=/root/catkin_ws/src \
    ebesin/yrdocker:latest
    • 参数解释

      • -dit参数对应的完整参数是-d -i -t:后台运行容器,并且容器会被分配终端。

      • --name yrtest参数:为容器设置名字为yrtest

      • -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=$DISPLAY:挂载与显示输出相关的目录

      • --mount type=bind,source=/home/dwayne/workspace/src,target=/root/catkin_ws/src:将宿主机中的原代码目录挂载到容器中,使用时需要将/home/dwayne/workspace/src替换为自己电脑中的src目录。该行也可以写为

        -v /home/dwayne/workspace/src:/ros/catkin_ws/src

      • ebesin/yrdocker:latest:指定要基于哪个镜像创建容器,本例中为ebesin/yrdocker:latest

    启动成功后应该会返回该容器的ID

  2. 进入容器

    $ docker exec -it yrdocker bash
    • 参数解释
      • -it:与docker run命令的参数含义一样
      • yrtest:要进入的容器名,也可以替换为容器ID
      • bash:进入容器所运行的进程,这里就写bash就好
  3. 在容器中操作

    进入容器后就可以和正常的ubuntu电脑一样操作了,进入容器后的默认目录为/root/catkin_ws,可以直接运行catkin_make命令进行编译。

一些注意事项

  • 在创建镜像时设置了默认的工作空间为/ros/catkin_ws,所以最好将宿主机中的工作区下的源码目录挂载到该目录下,就如上面的例子所示。
  • *在容器里面运行代码时,如果有需要保存的运行时数据,一定要保存在/ros/data目录下,因为容器运行时产生的数据不是持久化的,如果不保存在该目录下,在容器删除时数据也会丢失!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published