一、Docker镜像介绍

镜像是Docker的三大核心概念之一。

Docker运行容器前需要本地存在对应的镜像,如果镜像不存在本地,Docker会尝试先从默认的镜像仓库下载(默认使用Docker Hub公共注册服务中的仓库),我们也可以通过配置,使用自定义的镜像仓库。

二、获取最新的Ubuntu镜像

从Docker Hub的Ubuntu仓库下载一个最新的Ubuntu操作系统镜像,并下载一个centos7.2的系统镜像

# docker pull ubuntu

# docker pull centos:7.2.1511

从下载过程中可以看到分层存储的概念,镜像是由多层存储所构成。下载也是一层层的去下载,并非单一文件。下载过程中给出了每一层的 ID 的前 12 位。并且下载结束后,给出该镜像完整的 sha256 的摘要,以确保下载一致性。

三、查看本地镜像信息

# docker images
# 来自于哪个仓库   镜像标签信息      镜像的ID(唯一)    创建时间        镜像大小
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu latest weeks ago .2MB
centos 7.2. 9aec5c5fe4ba months ago 195MB
centos latest 1e1148e4cc2c months ago 202MB

使用docker tag为本地镜像添加新的标签, 这两个镜像的ID是一样的,只是名字不同而已。标签起到的快捷方式的作用。

# docker tag centos:7.2. centos:7.2
# docker images
REPOSITORY TAG          IMAGE ID       CREATED        SIZE 
centos 7.2 9aec5c5fe4ba months ago 195MB
centos 7.2. 9aec5c5fe4ba months ago 195MB

四、搜索镜像

--stars=0 默认的输出结果将按照星级评价进行排序,还可看到是否官方镜像,是否自动允许用户验证镜像的来源和内容。

# docker search mysql 

五、删除镜像

# docker rmi ubuntu:latest

# 或者复制镜像的ID全部删除
# docker rmi -f 9aec5c5fe4ba

六、创建镜像

创建镜像有三种方法:基于已有镜像的容器创建、基于本地模板导入、基于Dockerfile创建。

本次主要是基于已有的镜像容器创建

6.1 首先启动一个镜像,并在其中进行修改,并退出

[root@--- ~]# docker run -it centos /bin/bash
[root@f2306f13f765 /]# yum install net-tools -y
[root@f2306f13f765 /]# exit

6.2使用docker commit创建容器

# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2306f13f765 centos "/bin/bash" minutes ago Exited () About a minute ago gracious_shockley # docker commit -m 'install net-tools' -a 'lzfn' f2306f13f765 centos_test # -m 提交消息,-a 作者信息
sha256:c753a863c07a4901ed72ff39110971538a40dfc66824dffad5e0060d5994b555 # docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
centos_test latest c753a863c07a seconds ago 291MB

七、镜像的导入与导出

7.1 将镜像导出到本地文件

# docker save -o centos7..tar centos:7.2.

# docker save centos:7.2. > centos7..tar

7.2 将本地镜像导入到docker仓库

# docker load --input centos7..tar

# docker load < centos7..tar

Docker镜像服务(二)的更多相关文章

  1. Dockerfile自动制作Docker镜像(二)—— 其它常用命令

    Dockerfile自动制作Docker镜像(二)-- 其它常用命令 前言 a. 本文主要为 Docker的视频教程 笔记. b. 环境为 CentOS 7.0 云服务器 c. 上一篇:Dockerf ...

  2. 搭建docker镜像仓库(二):使用harbor搭建本地镜像仓库

    目录 一.系统环境 二.前言 三.Harbor 四.使用harbor搭建私有镜像仓库 4.1 环境介绍 4.2 k8smaster节点安装配置harbor 4.2.1 安装harbor离线包 4.2. ...

  3. 使用阿里Docker镜像加速器加速

    在阿里开发者平台注册开发者账号 https://dev.aliyun.com/search.html 注册之后可以访问Docker镜像服务 https://cr.console.aliyun.com/ ...

  4. Dockerfile 自动制作 Docker 镜像(三)—— 镜像的分层与 Dockerfile 的优化

    Dockerfile 自动制作 Docker 镜像(三)-- 镜像的分层与 Dockerfile 的优化 前言 a. 本文主要为 Docker的视频教程 笔记. b. 环境为 CentOS 7.0 云 ...

  5. 【实战】Docker入门实践二:Docker服务基本操作 和 测试Hello World

    操作环境 操作系统:CentOS7.2 内存:1GB CPU:2核 Docker服务常用命令 docker服务操作命令如下 service docker start #启动服务 service doc ...

  6. Docker for Windows(二)登录与配置镜像加速器

    一.启动Docker for Windows 通过桌面Docker Desktop启动,右下角出现的白色鲸鱼图标保持稳定时,表示Docker正在正常运行,将鼠标移到图标上会显示"Docker ...

  7. docker微服务部署之:五、利用DockerMaven插件自动构建镜像

    docker微服务部署之:四.安装docker.docker中安装mysql和jdk1.8.手动构建镜像.部署项目 在上一篇文章中,我们是手动构建镜像,即: 4.1.2.5.1.2.6.1.2中的将d ...

  8. Docker学习(二): 镜像的使用与构建

    特别声明: 博文主要是学习过程中的知识整理,以便之后的查阅回顾.部分内容来源于网络(如有摘录未标注请指出).内容如有差错,也欢迎指正! =============系列文章============= 1 ...

  9. 为Docker镜像添加SSH服务

    一.基于commit命令创建 1. 首先下载镜像 $ docker run -it ubuntu:16.04 /bin/bash 2. 安装SSH服务 #更新apt缓存 root@5ef1d31632 ...

随机推荐

  1. 多线程(六)多线程同步_SemaPhore信号量

    信号量依然是一种内核同步对象,它的作用在于控制共享资源的最大访问数量 例如:我们有一个服务器,为这服务器创建一个线程池,线程池有五个线程,每个线程处理1个请求.当五个线程都在处理请求时,这个线程池己到 ...

  2. 数据库连接池 DBUtils:

    import pymysqlfrom DBUtils.PooledDB import PooledDB, SharedDBConnectionPOOL = PooledDB ( creator=pym ...

  3. Angular7入门总结篇

  4. 【oracle】获取字符串长度

    lengthb(string)计算string所占的字节长度:返回字符串的长度,单位是字节 length(string)计算string所占的字符长度:返回字符串的长度,单位是字符

  5. strcspn()函数

    函数描述: 检索字符串 str1 开头连续有几个字符都不含字符串 str2 中的字符. 函数声明: #include<string.h> size_t strcspn(const char ...

  6. Python Dataframe 分组排序和 Modin

    Python Dataframe 分组排序和 Modin 1.按照其中一列进行排序 在dataframe中,按照其中的一列排序:比如q值倒排 (1)rank方法 data['new_rank'] = ...

  7. 小米笔试题:无序数组中最小的k个数

    题目描述 链接:https://www.nowcoder.com/questionTerminal/ec2575fb877d41c9a33d9bab2694ba47?source=relative 来 ...

  8. Harbor + Https 部署

    关闭防火墙和selinux systemctl stop firewalld sed -i 's/SELINUX=.*/SELINUX=disabled/g' /etc/sysconfig/selin ...

  9. go 1.13 环境变量配置

    GO111MODULE="off"GOARCH="amd64"GOBIN=""GOCACHE="/Users/js/Library ...

  10. Oracle 增删改(INSERT、DELETE、UPDATE)语句

    Ø  简介 本文介绍 Oracle 中的增删改语句,即 INSERT.DELETE.UPDATE 语句的使用.是时候展现真正的技术了,快上车: 1.   插入数据(INSERT) 2.   修改数据( ...