最近需要在政务云系统中部署深度学习环境,其使用麒麟操作系统并与互联网相互隔离,无法使用常规的指令行方式进行安装。参考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并加载镜像的更多相关文章

  1. Docker 导出&加载镜像

    文章首发自个人网站:https://www.exception.site/docker/docker-save-load-image 本文中,您将学习 Docker 如何导出&加载镜像.当我们 ...

  2. 在阿里云主机的Debian操作系统上安装Docker

    因为需要新搭建饭团网站,所以需要在阿里云的主机上跑数据库,java环境. 考虑到可扩展性和模块化,所以准备最近流行的docker技术.Docker -- 从入门到实践 阿里云主机1核1G,资源不多,所 ...

  3. 修改 docker image 安装目录 (解决加载大image时报错:"no space left on device")

    修改 docker image 安装目录 (解决加载大image时报错:"no space left on device" ) 基于Ubuntu16.04 docker版本: 17 ...

  4. XP安装IIS来加载aspx页面(Web调用SAP数据)

    1,安装IIS 在XP中安装IIS方法很简单,安装时需要提供安装光盘来加载I386文件,可以使用虚拟光驱或光盘.在此做个简单说明(控制面板-添加/删除 Windows组件-勾选Internet信息服务 ...

  5. 【docker部署】基于linux的centos操作系统部署安装docker容器

    一.docker介绍 容器是轻量级的,包含应用运行所需所有东西(代码.库.运行时环境.系统设置,以及依赖关系)的独立的包.每个容器都部署于它自己的 CPU.内存.块 I/O,以及网络资源上,所有这些都 ...

  6. 2300+字!在不同系统上安装Docker!看这一篇文章就够了

    辰哥准备出一期在Docker跑Python项目的技术文,比如在Docker跑Django或者Flask的网站.跑爬虫程序等等. 在Docker跑Python程序的时候不会太过于细去讲解Docker的基 ...

  7. linux上安装Docker (非常简单的安装方法) 2019

    Docker的三大核心概念:镜像.容器.仓库 镜像:类似虚拟机的镜像.用俗话说就是安装文件. 容器:类似一个轻量级的沙箱,容器是从镜像创建应用运行实例, 可以将其启动.开始.停止.删除.而这些容器都是 ...

  8. 在Ubuntu上安装Docker Engine

    在Ubuntu上安装Docker Engine 这篇文章是介绍如何在在Ubuntu上安装Docker Engine,就是Google翻译官方文档的版本,英语好的直接官方原文.原文 要在Ubuntu上开 ...

  9. 一段实现页面上的图片延时加载的js

    大家如果使用firebug去查看的话就会发现,当你滚动到相应的行时,当前行的图片才即时加载的,这样子的话页面在打开只加可视区域的图片,而其它隐藏的图片则不加载,一定程序上加快了页面加载的速度,对于比较 ...

随机推荐

  1. grasshopper | 通过图层引用线条 报错:“ Data conversion failed from Guid to Curve ”的避免方法

    需求:通过 LunchBox - > layer reference 电池 可以快速选中图层所在的线条,但是选择的数据流错误 直接选择会报错--"Data conversion fai ...

  2. C# 尝试还原程序包是出错:找不到“XXXXX”版本的程序包“XXXXXX”

    在C#管理程序包的时候有时会出现找不到某某版本的程序包 如果出现这样的情况,解决办法是在你当前项目获取当前类库下的packages.config里去删除一段配置就可以解决! 我的缺少的是版本为9.0. ...

  3. 1、java数据结构和算法---循环队列

    直接上代码: public class CircleArrayQueueLvcai { private int[] array; private int maxSize;//循环队列大小 privat ...

  4. BP-Wrapper:无锁竞争的缓存替换算法系统框架

    BP-Wrapper:无锁竞争的替换算法系统框架 最近看了一个golang的高性能缓存ristretto,该缓存可以很好地实现如下功能: Concurrent High cache-hit ratio ...

  5. Java Spring boot 多商户入驻 外卖|跑腿|代驾 Uniapp版本

    技术说明: 源码下载:https://www.yuanmahy.com/8357.html 开发环境:jdk1.8,mysql5.7,node 9.4,redis6.2,npm6.9 开发工具:前端使 ...

  6. 【NX二次开发】点到矢量或直线的垂点

    已知p1.p2.v1求p0 求解: 通过P1点和P2点,先求出v2: 使用 UF_VEC3_dot(),v1点乘v2得到P0与P2之间的距离: 使用UF_VEC3_unitize()将v1单位化: p ...

  7. 【C++】Vector求最大值最小值

    最大值: int max = *max_element(v.begin(),v.end()); 最小值: int min = *min_element(v.begin(),v.end());

  8. SpringBoot线程池的创建、@Async配置步骤及注意事项

    最近在做订单模块,用户购买服务类产品之后,需要进行预约,预约成功之后分别给商家和用户发送提醒短信.考虑发短信耗时的情况所以我想用异步的方法去执行,于是就在网上看见了Spring的@Async了. 但是 ...

  9. NOIP模拟测试13「矩阵游戏·跳房子·优美序列」

    矩阵游戏 考试时思路一度和正解一样,考试到最后还是打了80分思路,结果80分打炸了只得了40分暴力分 题解 算出来第一列的总值,每次通过加每两列之间的差值得出下一列的总值 算第一列我们只需要让当前点* ...

  10. Hdoop

    优势:1.低成本  2.高扩展 3.成熟的生态圈 1.安装虚拟机 vi /etc/profile