【docker x3】配置地平线提供的docker开发环境

文章目录

  • 1 需要的东西
  • 2 docker准备
  • 3 加载镜像
  • 4 操作容器
  • 5 启动+进入容器
  • 6 验证容器中的内容

本文以horizon_xj3_open_explorer_v1.8.5_20211224开发包和docker_cpu_openexplorer_centos_7_v1.11.6.tar镜像包为例。

1 需要的东西

  • 带有ubuntu18.04的电脑(学名:开发机,虚拟机也行)
  • openexplorer开发包(下图中第一个)
  • docker镜像包(下图中第二个)

开发包和镜像包可到地平线社区下载,下载完成后,放到开发机下图中的位置。
【docker x3】配置地平线提供的docker开发环境_第1张图片

2 docker准备

如果你的电脑中以前没用过docker,需要先安装docker。

在开发机中打开一个Terminal,执行以下命令:

sudo apt install curl -y      # 装包
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun    # 从阿里云下载docker
sudo docker image ls		# 看看镜像列表,此时啥也没有

为了方便后期使用,免得总是需要输入sudo,运行下面四行命令:

sudo groupadd docker 			# 添加docker group
sudo gpasswd -a ${USER} docker 	# 将当前用户添加到docker组
sudo service docker restart 	# 重启docker
newgrp docker 					# 更新用户组

3 加载镜像

cd到上图中的Horizon文件夹下,加载docker镜像

sudo docker load -i docker_cpu_openexplorer_centos_7_v1.11.6.tar	# 加载 
sudo docker image ls	# 查看镜像列表,注意:IMAGE ID,下面要用

镜像列表
说一段有点难懂的话:

容器基于镜像创建,容器中的进程依赖于镜像中的文件。一旦容器启动完成后,我们就可以登录到容器中安装自己需要的软件或者服务。
一个镜像可以有多个容器

翻译一下,下面我们还需要搞个容器。

4 操作容器

此时还没有容器,可运行下列命令查看一下容器列表:

docker container ls        # 查看容器列表

运行下方命令,把开发机中路径为/home/wyx/Horizon/horizon_xj3_open_explorer_v1.8.5_20211224/ddk/samples下的文件映射到镜像里,也就是映射到镜像的/data文件夹下,还给容器起了个别名horizon

sudo docker run -it -d -v /home/wyx/Horizon/horizon_xj3_open_explorer_v1.8.5_20211224/ddk/samples:/data --name horizon dfafddaf059d

注意

  • 运行完上面的命令,就有容器container了,如下图
  • 命令中具有映射关系的两个路径 之间用英文冒号
  • --name horizon表示容器别名(容器多的时候,易区分,后期可用别名来启动容器)
  • 最后的一串字符表示Image ID,上一节图中有展示。

容器列表

如果你是第一次操作,此时,容器horizon已经启动(start)了。启动还不行,得进入(attach)容器才能进行下一步操作。

进入已经start启动的容器:docker attach [CONTAINER ID]/[NAMES],例如本文中使用如下命令:

docker attach horizon          

5 启动+进入容器

关机重启后,需要启动容器,进入容器,可运行下面两行命令:

docker start horizon		# 启动horizon容器
docker attach horizon       # 进入horizon容器

此处附上如何进出容器
【docker x3】配置地平线提供的docker开发环境_第2张图片

6 验证容器中的内容

进入容器后,先看看容器中/data/下有什么:
镜像里的data文件夹
如下图,/data/文件夹和在上文中介绍到的samples/文件夹下的文件一样.
在开发机的samples文件夹下修改什么,镜像里会跟着修改!

【docker x3】配置地平线提供的docker开发环境_第3张图片
此时,容器里就是一个独立的系统了,比如运行python3
镜像里运行python3

你可能感兴趣的:(地平线开发板相关,深度学习,docker,旭日3开发板)