什么是Image
- 文件和meta data的集合(root filesystem)
- 分层的,并且每一层都可以添加改变删除文件,成为一个新的image
- 上层的image可以共享下层image的环境的
- Image本身是read-only的
root filesystem 就是基于linux内核的发行版系统,比如ubuntu,centos等,用来当做baseImage,而bootft是linux内核,是所有image共享的。在baseImage上做增删该查的任何操作,都会生成一层新的image。
获取image的两种方式
- 从官方Docker hub拉取image(貌似需要注册登录)。
上一篇已经拉取过hello-world的镜像,这次使用docker pull ubuntu:18:04
就可以拉取ubuntu的镜像了。:后面是版本号。这个和git像。 - 使用dockerfile build 一个image
关键就是dockerfile,下面自己用dockerfile来创建一个image,首先准备一个编译好的hello-docker的c语言文件,c语言的源代码如下:
然后对hello.c进行编译。
然后开始创建Dockerfile, 使用命令vim Dockerfile
FROM scratch 声明它的baseImage,ADD 将当前目录的hello文件添加到Dockerfile的根目录。CMD 是执行hello文件的命令了。
然后执行 docker build -t wky/hello-Docker .
,-t为这个image贴上标签, .代表当前目录。
使用dokcer的命令docker images
看到多了一个image。
然后再执行命令 docker run wky/hello-docker
运行一下。
操作image的基本命令
命令 | 解释 |
---|---|
查看所有镜像 | docker image ls |
删除镜像 | docker image rm 镜像名字 |
查找仓库中的镜像 | docker search 镜像名字 |
下载镜像 | docker image pull 镜像名字 |
查看镜像的详情 | docker image inspect nginx |
标题:Docker学习(二)Image的相关概念以及操作
作者:wky181
地址:https://www.wkyhky.site/articles/2019/11/04/1572839036081.html