武汉万象奥科的个人空间 https://www.eechina.com/space-uid-169433.html [收藏] [复制] [分享] [RSS]

博客

i.MX6ULL支持docker-V1.01

已有 329 次阅读2022-5-12 10:15 | i.MX6ULL评估套件, docker


1.导读:

互联网公司都不得不面对的问题,特别是各种版本的迭代之后,不同版本环境的兼容,对运维人员都是考验。Docker只所以发展如此迅速,也因其对这些情况给出了一个标准化的解决方案。本文将以我们武汉万象奥科电子有限公司的i.MX6ULL评估套件作为平台,搭建支持docker的嵌入式环境。

2.初始Docker

Docker是基于Go语言实现的开源容器项目,设想这么一个情况,应用层、服务等操作需要在多种不同的嵌入式平台搭建,每移植到一个平台上时,需要为每个平台搭建环境,例如安装Apache、MySQL、PHP等环境,每次引入新平台都是一轮耗时耗力的工程。

而Docker提供一种更为聪明便捷的方法,通过容器来打包应用、解耦应用和运行平台。意味着导入新平台时,只需新平台内运行docker容器,就可以快速完成部署。

本节简单介绍一下Docker的三大核心概念,更详细请根据网上资料专业学习Docker知识。

表1.1 Dokcer的三大核心概念

目前最大的公开仓库是官方提供的Docker Hub,其中存放着数量庞大的镜像供用户下载。同时国内的企业也逐步构建起自己的业务镜像,如华为云的IoT边缘 IoTEdge、阿里云等服务,都逐渐去底层差异化。

当用户搭建好自己的镜像后,只需push命令上传到指定的仓库。在新的机器上,只需pull命令将镜像从仓库下载下来。

3.ARM硬件环境

本文档使用我司的HD-IMX6ULL-MB评估套件来实现docker环境,硬件产品如下所示。

硬件平台环境条件如下所示。

表1.2 硬件平台资源

4.烧录固件

使用我司特别提供的固件(可快速安装docker),快速部署验证。固件包为“mfgtools_imx6ull_emmc_ubuntu18.04_filesystem_全开源核心板.zip”,需要验证的客户可直接联系我司的销售工程师获取即可。内容如下所示。

烧录步骤参考用户手册即可,这里不再赘述。

5.Ubuntu搭建docker操作

上述固件包内已经是Ubuntu系统镜像,我们只需在此环境下直接使用命令安装docker环境即可。系统安装docker环境的操作步骤如下所示。

首先,烧录后的第一次上电的板卡需要更新内部的软件版本,命令如下所示。update更新失败注意检测网络状态和date日期。部分软件可能体积过大,需要耐心等待。

然后清除旧版本的docker软件,再重新安装docker.io。

启动docker。

使能docker开机自启动。

检查docker运行状态。

6.获取镜像

运行此命令可以从Docker Hub上下载现成镜像。

查看本地的镜像文件命令如下所示。

7.创建容器

如上文所说,镜像可以看作一个只读模板,而容器就是加载模板后运行的沙盒环境,具有运行时所需的可写文件层、应用程序也处于运行状态。概念上可能会与PC端常用的虚拟机混淆,虚拟机是包括内核、应用运行环境和其他系统环境的,而Docker容器就是独立运行的一个或一组应用以及他们必须的运行环境。

创建容器时,需要指定使用的镜像文件,这里使用上面用pull指令下载下来的镜像文件,创建命令如下所示。

查看容器状态,命令如下所示,每个容器都有自己的CONTAINER_ID与NAMES,供后面的命令操作使用(可使用docker rename命令修改容器名,便于简便使用)。

8.启动容器

容器创建后,通过CONTAINER_ID与NAMES来操作容器,启动命令如下所示。

使用NAMES来操作容器的命令如下所示。

上文所说,容器是运行一个或一组进程,docker ps命令里的COMMAND即为容器运行的进程,当前显示bash,即进入命令交互进程。通过以下命令进入容器内部。

进入后,可以操作容器内的命令,如下所示。

通过exit命令,可退出容器,退出后容器就处于停止状态,如下所示。



路过

鸡蛋

鲜花

握手

雷人

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 立即注册

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
返回顶部