『中级篇』docker Image概述(13)
什么是镜像,镜像是怎么产生的,通过这节的学习的Docker container机制要比虚拟机的机制要小巧,原因何在?本节课程的内容是连接12节的,所以肯定跟12节的github有关系:https://github.com/limingios/docker.git####什么是Image
[*]文件和meta data的集合(root filesystem)
[*]对于linux系统来说分为:,就是内核空间(kernel space)和用户空间(user space),内核空间linux kernel,就理解成root filesystem
[*]用户空间就是在内核上层建立的其实就是: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
[*] 挂个国内的加速器吧
sudo curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://b81aace9.m.daocloud.io
sudo systemctl restart docker
[*]查看Image
sudo docker image ls
[*]获取Image
[*]bulid from Dockerfile
ls
cd labs
cd docker-centos-vim/
ls
pwd
more Dockerfile
sudo service docker restart
sudo docker build -t liming/vim:latest .
这里注意里面一共用了两步,这个跟咱们编写的Dockfile有关系,因为Dockfile也就两行。
[*]Pull from Registry(从仓库中下载,这个概念有点像git的方式,其实docker就是模仿了git的方式,我们可以从https://hub.docker.com/ pull,也可以把的Image push 到https://hub.docker.com/ 中)
sudo docker pull ubuntu:14.04
sudo docker image ls
[*]liming/vim 是在centos之上的一个Image
[*]因为Dockerfile中需要from centos 所以也下了centos Image
[*]ubuntu刚刚pull下来的
如果自己安装一个centos 和ubuntu 在虚拟机上也需要几个G吧,这里通过docker 才几百兆,是不是很省空间。
注意:从:https://hub.docker.com/ 中不仅仅可以下载官方的Image还可以下载私人的Image 他们的区别是:官方的名字后面没有/,私人的:人名/Image的名称
#4 通过版本号
sudo docker pull bitnami/wordpress:4
#默认的latest
sudo docker pull bitnami/wordpress
[*]进入容器内部
#创建文件
touch test.txt
#执行yum安装
yum install vim
[*]从容器内部退出,容器也变成了exited
docker的命令分布
[*]Management Commands (管理命令)
[*]Commands (配合管理的运行命令)
命令合集
个人主页:idig8.com
PS:认识了Image,下次如何创建自己的Image。实践中,欢迎大家持续关注。
往期精彩
[*]docker导学(一)
[*]容器的技术概述(二)
[*]docker的魅力初体验-5分钟安装wordpress不走弯路(三)
[*]docker官网介绍(四)
[*]如何在mac上安装docker(五)
[*]如何在window上安装docker(六)
[*]如何在mac上通过vagrant安装虚拟机(七)
[*]如何在window上通过vagrant安装虚拟机(八)
[*]docker-Machine的本地使用(九)
[*]docker-Machine的本地使用(十)
[*]在linux/mac下通过Docker-Machine在阿里云上的使用(11)
[*]docker架构和底层技术(12)
页:
[1]