Docker离线环境使用Ros的正确姿势

最近工作中遇到离线主机需要部署ros的需求,想到的解决方式就是使用docker来搞了,对于有使用经验的同学来说docker是多么优美又好用的工具,可是对于docker小白来说,还是要step by step尝试一下的。

首先,找一台在线主机安装docker:

1、更新现有的包列表:

sudo apt update


2、使用apt安装一些允许通过HTTPS才能使用的软件包:

sudo apt install apt-transport-https ca-certificates curl software-properties-common

3、将官方Docker存储库的GPG密钥添加到系统:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

4、将Docker存储库添加到APT源:

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable"

5、使用新添加的repo源中的Docker包更新包数据库:

sudo apt update

6、确保从Docker repo安装而不是默认的Ubuntu repo:

apt-cache policy docker-ce

Docker的版本号可能不同,但您还是会看到这样的输出:

 7、安装Docker:

sudo apt install docker-ce

8、安装好之后检查是否正在运行:

sudo systemctl status docker

输出类似以下内容则表明该服务处于工作状态:

9、用hello-world 做一下try run测试:

docker run hello-world

输出下面的内容则表示Docker正常工作:

到现在Docker已经安装好了,接下来就是制作ros镜像,ros镜像官网docker官网已经打包好,我们只需要拉去下来打成.tar就好了,步骤如下:

1、拉取docker官方镜像:

sudo docker pull osrf/ros:noetic-desktop-full

2、下载完成后,可通过以下命令查看镜像:

sudo docker images

目前已存在镜像如图:

3、打包ros镜像:

sudo docker save osrf/ros:noetic-desktop-full -o ros.tar

到此ros镜像打包结束,接下来就是离线主机内部署的工作了,要想部署docker镜像,首先需要安装docker,因为该主机是离线状态,所以只能是离线方式进行安装了。

1、下载离线安装包,Docker的离线安装需要用到containerd.io ,docker-ce-cli,docker-ce,从官方链接可以下载指定的版本。

2、安装docker

将Docker的3个deb文件copy到离线主机,然后用sudo dpkg -i x.deb,依次进行安装,安装的顺序为:containerd.io ,docker-ce-cli,docker-ce。

3、启动Docker

sudo systemctl start docker

4、查看Docker的状态

sudo systemctl status docker

5、设置Docker的开机自启动

sudo systemctl enable docker.service

6、查看开机自启动是否添加成功

sudo systemctl  list-unit-files |grep docker

接下来把打包好的ros镜像copy到离线主机进行挂载。

1、加载镜像

sudo docker load -i ros.tar

2、运行镜像并挂载本地目录

sudo docker run -it -v /path of local/:/path of image/ 

到现在离线部署就搞定啦,参考链接:

如何在Ubuntu上安装并使用Docker_ubuntu安装docker_飞飞帅傅的博客-CSDN博客

Ubuntu20下的Docker的离线安装_ubuntu离线安装docker_丨闲蛋超人丨的博客-CSDN博客

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值