1.  查看  docker 版本

sudo docker version

2. 查看本地库中的镜像

sudo docker images

3.   查看  正在运行的  容器

sudo docker ps -a

4.   导入 镜像的   tar 文件  到本地库

sudo docker   load  -i  14.14.14.100_5000_pytorch_pytorch_1.1.0-cuda10-py36.tar

5.  再次查看库中镜像和运行的容器,发现库中已有镜像

6.    为库中镜像改名

docker tag {imageID} {repository}:{tag}

库中镜像:

镜像改名:

改名后,相同 ID 的镜像会有两个, 这时不能 用镜像ID 来删除镜像,因为这时该镜像有两个引用(有了两个名)。为防止一个镜像多个名,我们可以设置相同的名但是不同的tag标签, 也或者直接删掉多余的命名和标签,如下:

 

7.    根据库中的镜像运行容器:

sudo docker run -it      14.14.14.100:5000/pytorch/pytorch:1.1.0-cuda10-py36   /bin/bash

其中,

    14.14.14.100:5000/pytorch/pytorch:1.1.0-cuda10-py36      为 容器名+容器tag

参数  -t  让Docker分配一个伪终端并绑定在容器的标准输入上,-i 让容器的标准输入保持打开。

使用docker run命令来启动容器,docker在后台运行的标准操作包括
1.检查本地是否存在指定的镜像,不存在则从公有仓库下载
2.使用镜像创建并启动容器
3.分配一个文件系统,并在只读的镜像层外面挂载一层可读可写层
4.从宿主主机配置的网桥接口中桥接一个虚拟接口道容器中去
5.从地址池分配一个ip地址给容器
6.执行用户指定的应用程序
7.执行完毕之后容器被终止

说明来自: https://www.cnblogs.com/linjiqin/p/8608975.html

8.    在运行的容器中安装软件后, 将该容器保存为新的镜像

查看需要保存为镜像的容器信息

根据容器ID 来保存容器为镜像。

具体命令:

docker commit 2ec7cf215b52 new_pytorch:v1
2ec7cf215b52 为容器的ID 
new_pytorch 为保存成镜像的名
v1 为保存成镜像的标签

9.   把库中的镜像保存到硬盘

查看库中的镜像

docker images

报库中的镜像导出到硬盘上:

docker save -o /tmp/new_pytoch:v1.tar new_pytorch:v1

成功导出:

-----------------------------------------------------------------

附注(常用命令):

连接到某个正在运行的容器

docker attach $CONTAINER_ID

启动某个已经停掉的容器     (  start 命令只能启动一个已经停掉的容器  )

docker  start  $CONTAINER_ID

启动某个容器     (  restart 命令可以重启正在运行的容器,也可以启动已经停掉的容器  )

docker   restart   $CONTAINER_ID

***  不论是  start命令还是restart 命令  启动的容器如果有交互终端则只能通过  docker attach $CONTAINER_ID 进入 。

删除docker中的镜像

docker rmi 镜像id

删除docker中的容器

docker rm 容器id

查看当前正在运行的容器

docker ps

查看所有容器:(包括 正在运行的, 也包括退出的容器)

docker ps -a

注意, 在删除某个镜像之前要保证没有使用该镜像的容器(包括正在运行的容器,也包括退出的容器)。

因此,我们需要先删除使用该镜像的已退出的容器, 而对于正在运行的容器我们需要先停掉该容器,再删除容器。当没有使用该镜像的容器存在的情况下,我们才能删除该镜像。

对于多镜像 ID 相同的情况下,我们需要使用  镜像名+镜像标签(tag) 来删除镜像。

参考资料:

https://blog.csdn.net/qq_26709459/article/details/80785761

https://www.cnblogs.com/linjiqin/p/8608975.html

https://blog.csdn.net/x8h8kenan/article/details/80229279

Ubuntu 18.04.4 导入docker镜像,启动镜像,保存容器为镜像,导出镜像的更多相关文章

  1. ubuntu 18.04 上安装 docker

    命令安装 docker 1.直接从 ubuntu 仓库安装,打开终端,输入: 2.启动 docker 服务  . 设置开机自启动 docker 服务 3.免 sudo 配置:

  2. Ubuntu 18.04 安装博通(Broadcom)无线网卡驱动

    目录 Ubuntu 18.04 安装博通(Broadcom)无线网卡驱动 Package gcc is not configured yet. 解决办法 history history | grep ...

  3. [笔记] Ubuntu 18.04安装Docker CE及NVIDIA Container Toolkit流程

    之前写的[笔记] Ubuntu 18.04安装Docker CE及nvidia-docker2流程已经out了,以这篇为准. Docker的好处之一,就是在Container里面可以随意瞎搞,不用担心 ...

  4. Ubuntu 18.04下Couldn't connect to Docker daemon at http+docker://localunixsocket解决办法

    一台服务器系统为:Ubuntu 18.04 LTS,上面建了git裸仓库,用于开发吧代码push到这里.同时WEB测试环境通过docker也部署在这台.通过git钩子post-receive,当有新代 ...

  5. Ubuntu 18.04 启动root账号并授权远程登录

    Ubuntu 18.04 刚刚上市2个月,下载安装,尝尝鲜~ 安装界面看上去舒服许多, 安装的速度也较之前17.04 和16.04 都快了许多.抱歉,未截图. Ubuntu 安装完成后默认不启动roo ...

  6. [笔记] Ubuntu 18.04安装Docker CE及nvidia-docker2流程

    Docker的好处之一,就是在Container里面可以随意瞎搞,不用担心弄崩Host的环境. 而nvidia-docker2的好处是NVidia帮你配好了Host和Container之间的CUDA相 ...

  7. ubuntu 18.04 - server版 开机启动脚本

    ubuntu 18.04 不再使用 inited 管理系统,改用 systemd systemd 默认读取 /etc/systemd/system 下的文件,该目录下的文件会链接/lib/system ...

  8. How To Install Docker On Ubuntu 18.04

    Docker is an increasingly popular software package that creates a container for application developm ...

  9. Ubuntu 18.04 LTS 常用软件安装杂记

    之前个人笔记本装的是 Linux Mint,用了一段时间但是体验不佳,所以打算换成 Ubuntu .作为一个 Linux 小白,当时配置一些软件环境费了不少时间.这次打算简单记录下,和大家分享一下我的 ...

  10. ubuntu 18.04 搭建flask服务器(大合集,个人实操)

    ubuntu 18.04 搭建flask服务器(大合集) Ubuntu python flask 服务器 本次使用的Ubuntu版本为:Ubuntu 18.04.5 LTS (GNU/Linux 4. ...

随机推荐

  1. Easysearch 跨集群复制实战

    在之前的文章中,有通过网关实现容灾的案例.今天给大家介绍 Easysearch 的跨集群复制功能.该功能可在集群之间复制数据,应用场景包括但不限于以下举例: 灾备同步:将数据同步到灾备中心,灾备中心可 ...

  2. Future集合会等线程池执行完才开始遍历吗?

    先说结论:Future集合并不是等线程池执行完才开始遍历,而是线程池内的线程执行完一条Future集合就立即遍历一条 在使用线程池的业务场景下,我们经常需要获取线程执行的返回值,此时我们需要Calla ...

  3. 如何判断APP页面是原生还是H5

    如何判断APP页面是原生还是H5 1.打开设置,搜索"开发者选项",点击"开发者选项" 华为手机进入开发者模式方法 1.打开华为手机的[设置],找到并点击进入[ ...

  4. UE4打包发布后,在Windows和Android平台上访问非Asset文件

    1.问题来源 最近的项目里面有个需求,要在打包之后的exe或者apk运行起来后访问工程Content或者安卓目录下的非Asset文件,比如text文件,json文件等,从中读取一些可随时修改的配置项信 ...

  5. DotNetGuide专栏C#/.NET/.NET Core充电站(让你学习不迷路)

    DotNetGuide简介 记录.收集和总结C#/.NET/.NET Core基础知识.学习路线.开发实战.编程技巧练习.学习视频.文章.书籍.项目框架.社区组织.开发必备工具.常见面试题.面试须知. ...

  6. Lfu缓存在Rust中的实现及源码解析

    一个 lfu(least frequently used/最不经常使用页置换算法 ) 缓存的实现,其核心思想是淘汰一段时间内被访问次数最少的数据项.与LRU(最近最少使用)算法不同,LFU更侧重于数据 ...

  7. HCIA基本命令

    ACLDHCPNATSTP-RSTP-MSTPVLANVLAN间路由VRRP链路聚合路由

  8. python 无监督生成模型

    无监督生成模型在机器学习中扮演着重要角色,特别是当我们在没有标签数据的情况下想要生成新的样本或理解数据的内在结构时.一种流行的无监督生成模型是生成对抗网络(Generative Adversarial ...

  9. Redis查询大key

    原文 安装 wget "https://pypi.python.org/packages/68/44/5efe9e98ad83ef5b742ce62a15bea609ed5a0d1caf35 ...

  10. map端join和reduce端join的区别

    MapReduce Join MapJoin和ReduceJoin区别及优化 maptask处理后写到本地,如果再到reduce,又涉及到网络的拷贝. map端join最大优势,可以提前过滤不需要的数 ...