麒麟操作系统上安装docker并加载镜像
最近需要在政务云系统中部署深度学习环境,其使用麒麟操作系统并与互联网相互隔离,无法使用常规的指令行方式进行安装。参考docker官方文档并经过多次尝试,使用离线安装的方式完成了环境的部署。这里做一下笔记分享经验。
整个过程大概分为4步:
·操作系统版本信息查询
·docker官网下载安装文件
·离线安装
·镜像迁移及部署
一、操作系统版本查询
麒麟系统在3.0版之后,不再使用FreeBSD内核作为基础,开始使用Linux内核。这也就是说,不少Linux版本的软件可以直接在麒麟系统上进行安装。但Linux也有多种不同的版本,这里就需要先确定所使用的麒麟操作系统版本对应哪个Linux OS。通常可以通过:uname -a || lsb_release -a || cat /proc/version 等指令进行查询。
以我在政务云项目中所使用的银河麒麟4.0.X为例,使用 lsb_release -a 和 uname -a 指令仅能查看到麒麟版本和对应的Linux内核版本,但在使用 cat /proc/version 指令时,可以看到输出的内容中有 "Ubuntu1~16.04.9" 字样,也就是说该麒麟版本与Ubuntu较为接近,可以使用.deb安装包。
二、docker官网下载安装文件
根据docker官网文档( https://docs.docker.com/engine/install/ubuntu/#install-from-a-package )指示,需要在下载地址( https://download.docker.com/linux/ubuntu/dists/ )选择正确的Ubuntu发行版本,我们刚查询到的对应版本是Ubuntu16.04.9,也就是xenial版本

至于说Ubuntu对应版本号与版本名称可以在 https://blog.csdn.net/songfulu/article/details/85310273 查到。
之后,根据官方文档指引,最终在 /ubuntu/dists/xenial/pool/stable/amd64/ 的路径下,找到了docker各稳定版的离线安装包。

需要特别注意的是,这里的安装包共有3类,即 containerd.io \ docker-ce-cli \ docker-ce 这3类安装包之间存在着依赖关系,每一类安装包都需要至少下载一个。
三、离线安装
根据官方文档的说明,使用 dpkg -i 指令安装即可。 但经过实践摸索,这三类安装包之间存在依赖关系,顺序错误会导致安装失败
①首先要安装容器类服务,使用 dpkg -i containerd.io_XXXXXX.deb 指令进行安装。

②其次要安装docker客户端,cli 即为 client 的意思。使用 dpkg -i docker-ce-cli_XXXX.deb 指令进行安装。

③最后再安装docker服务端程序,使用 dpkg -i docker-ce_XXXX.deb 指令进行安装。

这样就能够正确的建立依赖关系,完成docker的安装。一般来讲,安装之后会自动启动docker服务,若该服务未启动,则使用 service docker start 或 systemctl start docker 指令将其开启即可。
四、镜像迁移及部署
docker环境配置成功,最后拷贝进来事先通过docker save命令打包好的镜像压缩包(tensorflow/tensorflow:2.2.3-gpu-py3),使用docker load命令加载这个镜像。就可以在麒麟操作系统中运行深度学习程序了。
麒麟操作系统上安装docker并加载镜像的更多相关文章
- Docker 导出&加载镜像
文章首发自个人网站:https://www.exception.site/docker/docker-save-load-image 本文中,您将学习 Docker 如何导出&加载镜像.当我们 ...
- 在阿里云主机的Debian操作系统上安装Docker
因为需要新搭建饭团网站,所以需要在阿里云的主机上跑数据库,java环境. 考虑到可扩展性和模块化,所以准备最近流行的docker技术.Docker -- 从入门到实践 阿里云主机1核1G,资源不多,所 ...
- 修改 docker image 安装目录 (解决加载大image时报错:"no space left on device")
修改 docker image 安装目录 (解决加载大image时报错:"no space left on device" ) 基于Ubuntu16.04 docker版本: 17 ...
- XP安装IIS来加载aspx页面(Web调用SAP数据)
1,安装IIS 在XP中安装IIS方法很简单,安装时需要提供安装光盘来加载I386文件,可以使用虚拟光驱或光盘.在此做个简单说明(控制面板-添加/删除 Windows组件-勾选Internet信息服务 ...
- 【docker部署】基于linux的centos操作系统部署安装docker容器
一.docker介绍 容器是轻量级的,包含应用运行所需所有东西(代码.库.运行时环境.系统设置,以及依赖关系)的独立的包.每个容器都部署于它自己的 CPU.内存.块 I/O,以及网络资源上,所有这些都 ...
- 2300+字!在不同系统上安装Docker!看这一篇文章就够了
辰哥准备出一期在Docker跑Python项目的技术文,比如在Docker跑Django或者Flask的网站.跑爬虫程序等等. 在Docker跑Python程序的时候不会太过于细去讲解Docker的基 ...
- linux上安装Docker (非常简单的安装方法) 2019
Docker的三大核心概念:镜像.容器.仓库 镜像:类似虚拟机的镜像.用俗话说就是安装文件. 容器:类似一个轻量级的沙箱,容器是从镜像创建应用运行实例, 可以将其启动.开始.停止.删除.而这些容器都是 ...
- 在Ubuntu上安装Docker Engine
在Ubuntu上安装Docker Engine 这篇文章是介绍如何在在Ubuntu上安装Docker Engine,就是Google翻译官方文档的版本,英语好的直接官方原文.原文 要在Ubuntu上开 ...
- 一段实现页面上的图片延时加载的js
大家如果使用firebug去查看的话就会发现,当你滚动到相应的行时,当前行的图片才即时加载的,这样子的话页面在打开只加可视区域的图片,而其它隐藏的图片则不加载,一定程序上加快了页面加载的速度,对于比较 ...
随机推荐
- NOIP 模拟4 T2
本题属于二和一问题 子问题相互对称 考虑对于问题一:知a求b 那么根据b数组定义式 显然能发现问题在于如何求dis(最短路) 有很多算法可供选择 dijsktra,floyed,bfs/dfs,spf ...
- kafka实战教程(python操作kafka),kafka配置文件详解
kafka实战教程(python操作kafka),kafka配置文件详解 应用往Kafka写数据的原因有很多:用户行为分析.日志存储.异步通信等.多样化的使用场景带来了多样化的需求:消息是否能丢失?是 ...
- TVM如何训练TinyML
TVM如何训练TinyML 机器学习研究人员和从业人员对"裸机"(低功耗,通常没有操作系统)设备产生了广泛的兴趣.尽管专家已经有可能在某些裸机设备上运行某些模型,但是为各种设备优化 ...
- HLS后端示例
HLS后端示例 TVM支持带有SDAccel的Xilinx FPGA板.这是有关如何将TVM部署到AWS F1 FPGA实例的文档. 此功能仍处于试验阶段.暂时无法使用SDAccel部署端到端神经网络 ...
- Django(53)二次封装Response
前言 有时候我们使用drf的Response,会发现默认返回的格式不太友好,每次我们都需要写入以下的格式 return Response({ "status": 0, " ...
- Hadoop 数据迁移用法详解
数据迁移使用场景 冷热集群数据分类存储,详见上述描述. 集群数据整体搬迁.当公司的业务迅速的发展,导致当前的服务器数量资源出现临时紧张的时候,为了更高效的利用资源,会将原A机房数据整体迁移到B机房的, ...
- python应用_读取Excel数据【二】_二次封装之函数式封装
目的:想要把对Excel文件读取做成一个通用的函数式封装,便于后续简单调用,隔离复杂性. 未二次封装前原代码: #coding=gbkimport osimport xlrdcurrent_path= ...
- QT Dialog模态与非模态
模态 // 创建对话框窗口 TestDialog* dlg = new TestDialog(this); // 阻塞程序的运行 dlg->exec(); 这样的话,当运行对话窗口的时候,会阻塞 ...
- Redisson 分布式锁实现之前置篇 → Redis 的发布/订阅 与 Lua
开心一刻 我找了个女朋友,挺丑的那一种,她也知道自己丑,平常都不好意思和我一块出门 昨晚,我带她逛超市,听到有两个人在我们背后小声嘀咕:"看咱前面,想不到这么丑都有人要." 女朋友 ...
- 【VBA】判断文件是否存在
效果: 源码: Sub 判断文件是否存在() Dim strcfg As String strcfg = "D:\a.cfg" If Dir(strcfg, vbDirectory ...