wky233 的个人博客

记录精彩的程序人生

Open Source, Open Mind,
Open Sight, Open Future!
  menu
40 文章
10233 浏览
0 当前访客
ღゝ◡╹)ノ❤️

Docker学习(二)Image的相关概念以及操作

什么是Image

  • 文件和meta data的集合(root filesystem)
  • 分层的,并且每一层都可以添加改变删除文件,成为一个新的image
  • 上层的image可以共享下层image的环境的
  • Image本身是read-only的
    5CWQ1S3287XBSPM.png

root filesystem 就是基于linux内核的发行版系统,比如ubuntu,centos等,用来当做baseImage,而bootft是linux内核,是所有image共享的。在baseImage上做增删该查的任何操作,都会生成一层新的image。

获取image的两种方式

  1. 从官方Docker hub拉取image(貌似需要注册登录)。
    上一篇已经拉取过hello-world的镜像,这次使用docker pull ubuntu:18:04就可以拉取ubuntu的镜像了。:后面是版本号。这个和git像。
  2. 使用dockerfile build 一个image
    关键就是dockerfile,下面自己用dockerfile来创建一个image,首先准备一个编译好的hello-docker的c语言文件,c语言的源代码如下:
    image.png

然后对hello.c进行编译。

image.png

然后开始创建Dockerfile, 使用命令vim Dockerfile

image.png

FROM scratch 声明它的baseImage,ADD 将当前目录的hello文件添加到Dockerfile的根目录。CMD 是执行hello文件的命令了。
然后执行 docker build -t wky/hello-Docker .-t为这个image贴上标签, .代表当前目录。

image.png

使用dokcer的命令docker images看到多了一个image。

image.png

然后再执行命令 docker run wky/hello-docker 运行一下。

image.png

操作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