在线刷关键词网站排名,网站建设费摊销期限,京津冀协同发展的基础,东莞市外贸网站建设多少钱1.什么是Docker镜像
Docker镜像是由文件系统叠加而成#xff08;是一种文件的存储形式#xff09;。最底端是一个文件引导系统#xff0c;即bootfs#xff0c;这很像典型的Linux/Unix的引导文件系统。Docker用户几乎永远不会和引导系统有什么交互。实际上#xff0c;当一…1.什么是Docker镜像
Docker镜像是由文件系统叠加而成是一种文件的存储形式。最底端是一个文件引导系统即bootfs这很像典型的Linux/Unix的引导文件系统。Docker用户几乎永远不会和引导系统有什么交互。实际上当一个容器启动后它将会被移动到内存中而引导文件系统则会被卸载以留出更多的内存供磁盘镜像使用。Docker容器启动是需要的一些文件而这些文件就可以称为Docker镜像。
2 Docker镜像操作
2.1 列出镜像
2.1.1 列出docker下的当前docker服务所在的系统里面所有镜像
docker images REPOSITORY镜像所在的仓库名称 TAG镜像标签 IMAGE ID镜像ID CREATED镜像的创建日期不是获取该镜像的日期 SIZE镜像大小 这些镜像都是存储在Docker宿主机的/var/lib/docker目录下 2.1.2 同一个仓库下的不同镜像
Docker提供了一种称为标签Tag的功能。每个镜像在列出来时都带有一个标签例如12.10、12.04等等。每个标签对组成特定镜像的一些镜像层进行标记比如标签12.04就是对所有Ubuntu12.04镜像层的标记。这种机制使得同一个仓库中可以存储多个镜像。
在运行同一个仓库中的不同镜像时可以通过在仓库名后面加上一个冒号和标签名来指定该仓库中的某一具体的镜像例如
docker run --name custom_container_name –i –t docker.io/ubunto:12.04 /bin/bash
表明从镜像Ubuntu:12.04启动一个容器而这个镜像的操作系统就是Ubuntu:12.04。在构建容器时指定仓库的标签也是一个好习惯。
2.3搜索镜像
如果需要从网络中查找需要的镜像可以通过以下命令搜索:
# 搜索镜像方式一https://hub.docker.com/ 点点点搜索方式二docker search 镜像名字# # search作用搜索Docker Hub(镜像仓库)上的镜像
# 命令格式docker search [OPTIONS] TERM
# 命令参数(OPTIONS)-f, --filter filter 根据提供的格式筛选结果--format string 利用Go语言的format格式化输出结果--limit int 展示最大的结果数默认25个--no-trunc 内容全部显示# 命令演示
docker search -f is-officaltrue tomcat
docker search tomcat NAME仓库名称 DESCRIPTION镜像描述 STARS用户评价反应一个镜像的受欢迎程度 OFFICIAL是否官方 AUTOMATED自动构建表示该镜像由Docker Hub自动构建流程创建的 2.4拉取镜像
2.4.1从Docker Hub拉取
Docker Hubhttps://hub.docker.com/
Docker镜像首页包括官方镜像和其它公开镜像。Docker Hub上最受欢迎的10大镜像通过Docker registry API获取不了镜像被pull的个数只能通过镜像的stars数量来衡量镜像的流行度。毫无疑问拥有最高stars数量的库都是官方库。
由于国情的原因国内下载 Docker HUB 官方的相关镜像比较慢可以使用国内docker.io的一些镜像加速器镜像保持和官方一致关键是速度块推荐使用。
2.4.2 Mirror与Private Registry的区别
Private Registry私有仓库开发者或者企业自建的镜像存储库通常用来保存企业内部的 Docker 镜像用于内部开发流程和产品的发布、版本控制。
Mirror代理中转服务比如daocloud提供的Mirror服务直接对接Docker Hub的官方Registry。Docker Hub 上有数以十万计的各类 Docker 镜像。 在使用Private Registry时需要在Docker Pull 或Dockerfile中直接键入Private Registry 的地址通常这样会导致与 Private Registry 的绑定缺乏灵活性。
使用 Mirror 服务只需要在 Docker 守护进程Daemon的配置文件中加入 Mirror 参数即可在全局范围内透明的访问官方的 Docker Hub避免了对 Dockerfile 镜像引用来源的修改。
2.4.3 拉取镜像
# 拉取指定版本
docker pull centos:7
# 拉取最新版本
docker pull centos
目前国内访问docker hub速度上有点尴尬使用docker Mirror势在必行。现有国内提供docker镜像加速服务的商家有不少下面重点ustc镜像。 2.4.4
2.4.4 国内ustc镜像
ustc是老牌的linux镜像服务提供者了还在遥远的ubuntu 5.04版本的时候就在用。ustc的docker镜像加速器速度很快。ustc docker mirror的优势之一就是不需要注册是真正的公共服务。
Docker 镜像使用帮助 - LUG USTCDocker 镜像使用帮助https://lug.ustc.edu.cn/wiki/mirrors/help/docker 步骤
1编辑该文件vi /etc/docker/daemon.json PS: 如果该文件不存在就手动创建另外有可能如果没有vim 命令则使用vi命令即可。
2在该文件中输入如下内容
{registry-mirrors: [https://docker.mirrors.ustc.edu.cn]} 还有本地阿里云的镜像地址,速度更快
{ registry-mirrors: [https://alzgoonw.mirror.aliyuncs.com]
} 3一定要重启docker服务如果重启docker后无法加速可以重新启动OS然后通过docker pull命令下载镜像 。
service docker restart 2.4 查看镜像
# 查看机器上有哪些镜像
# 命令docker images
# 解释REPOSITORY TAG IMAGE ID CREATED SIZE
镜像名字 版本 id号 创建时间 大小 2.5 运行镜像
# 命令
docker run 镜像名字docker run hello-world# 例
第一个hello-world没有任何意义docker run hello-world1 客户端连到服务端服务下载了hello-world镜像2 通过镜像跑起容器来3 容器输出一些东西通过服务端发送给客户端客户端展示在窗口里了
2.6 删除镜像
删除镜像方式1根据仓库的名称镜像的名称来删除 还可以使用image_id来进行删除。
# 命令
docker rmi 镜像名字/Id号# 注意
1.如果还有基于这个镜像的容器是不允许删除镜像的
2.可以先删除容器在删除镜像# 查询容器依赖 docker ps -a# 在删除要不允许的镜像docker rm 容器/id 删除镜像方式2
docker rmi docker images -q删除所有镜像 2.7 镜像容器的实质
镜像容器是可以看作-镜像就是一堆文件这堆文件通过docker跑起来就是容器你现在就把他当成一个操作系统内跑了这个软件比如就是centosredis-假设centos7的镜像跑起来此时容器你就当成在你宿主机上跑了一个centos7的操作系统虚拟机