前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >『中级篇』docker Image概述(13)

『中级篇』docker Image概述(13)

原创
作者头像
IT架构圈
发布2018-06-10 00:01:46
6500
发布2018-06-10 00:01:46
举报
文章被收录于专栏:IT架构圈IT架构圈

什么是镜像,镜像是怎么产生的,通过这节的学习的Docker container机制要比虚拟机的机制要小巧,原因何在?本节课程的内容是连接12节的,所以肯定跟12节的github有关系:https://github.com/limingios/docker.git

####什么是Image

  • 文件和meta data的集合(root filesystem)
  1. 对于linux系统来说分为:,就是内核空间(kernel space)和用户空间(user space),内核空间linux kernel,就理解成root filesystem
  2. 用户空间就是在内核上层建立的其实就是:ubuntu,centos,redhat, Debian。
  • 分层的,并且每一层都是可以添加改变的,成为一个新的Image。例如:先建立个apache的Image,结果在apache的Image上边我有建立的一个mysql的Image。
  • 不同的Image之前可以共享分层。例如:apache的Image可以跟mysql的Image之间进行通信。
  • Image本身是只读的

####开始Image的表演

首先启动vagrant,在上一节创建的虚机

  • 启动vagrant reload
  • 进入vagrant ssh sudo service docker restart sudo docker version![](https://upload-images.jianshu.io/upload_images/11223715-8a74599cac6ad897.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) * 挂个国内的加速器吧 ``` bash sudo curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://b81aace9.m.daocloud.io sudo systemctl restart docker
    sudo docker image ls
    ls cd labs cd docker-centos-vim/ ls pwd more Dockerfile sudo service docker restart sudo docker build -t liming/vim:latest .
    这里注意里面一共用了两步,这个跟咱们编写的Dockfile有关系,因为Dockfile也就两行。
    sudo docker pull ubuntu:14.04 sudo docker image ls
    如果自己安装一个centos 和ubuntu 在虚拟机上也需要几个G吧,这里通过docker 才几百兆,是不是很省空间。
    image.png
    image.png
    注意:从:https://hub.docker.com/ 中不仅仅可以下载官方的Image还可以下载私人的Image 他们的区别是:官方的名字后面没有/,私人的:人名/Image的名称
    image.png
    image.png
    #4 通过版本号 sudo docker pull bitnami/wordpress:4 #默认的latest sudo docker pull bitnami/wordpress
  • 查看Image
  • 获取Image
  • bulid from Dockerfile
  • Pull from Registry(从仓库中下载,这个概念有点像git的方式,其实docker就是模仿了git的方式,我们可以从https://hub.docker.com/ pull,也可以把的Image push 到https://hub.docker.com/ 中)
    1. liming/vim 是在centos之上的一个Image
    2. 因为Dockerfile中需要from centos 所以也下了centos Image
    3. ubuntu 刚刚pull下来的
代码语言:txt
复制
![](https://upload-images.jianshu.io/upload_images/11223715-4b73db9b70d13972.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

![](https://upload-images.jianshu.io/upload_images/11223715-a36bd3c984bc3b2f.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

![image.png](https://upload-images.jianshu.io/upload_images/11223715-82715bff20e27287.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

![](https://upload-images.jianshu.io/upload_images/11223715-1bf9dfd498501dec.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

![](https://upload-images.jianshu.io/upload_images/11223715-7d1bbecc0516970f.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

* 进入容器内部

``` bash

#创建文件

touch test.txt

#执行yum安装

yum install vim

代码语言:txt
复制
  • 从容器内部退出,容器也变成了exited
docker的命令分布
  • Management Commands (管理命令)
  • Commands (配合管理的运行命令)
命令合集

PS:认识了Image,下次如何创建自己的Image。实践中,欢迎大家持续关注。

往期精彩
  1. docker导学(一)
  2. 容器的技术概述(二)
  3. docker的魅力初体验-5分钟安装wordpress不走弯路(三)
  4. docker官网介绍(四)
  5. 如何在mac上安装docker(五)
  6. 如何在window上安装docker(六)
  7. 如何在mac上通过vagrant安装虚拟机(七)
  8. 如何在window上通过vagrant安装虚拟机(八)
  9. docker-Machine的本地使用(九)
  10. docker-Machine的本地使用(十)
  11. 在linux/mac下通过Docker-Machine在阿里云上的使用(11)
  12. 『中级篇』docker架构和底层技术(12)
image
image

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • docker的命令分布
  • 命令合集
    • 往期精彩
    相关产品与服务
    容器镜像服务
    容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档