6Docker Image

Posted jie-fang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了6Docker Image相关的知识,希望对你有一定的参考价值。

6.1 什么是image

  • 文件和meta data的集合(root filesystem)
  • 分层的,并且每一层都可以添加、改变、删除文件,成为一个新的image
  • 不同的image可以共享相同的layer
  • image本身是read-only的

技术分享图片

6.2 image的获取

  1. Build from Dockerfile
  2. Pull from Registry
  3. commit from a container‘s changes

通过Dockerfile构建一个base image

  1. 编写一个c文件并编译成为可执行文件
#include<stdio.h>

int main()
{
    printf("hello docker
");
}
gcc -static hello.c -o hello
  1. 编写Dockerfile文件
FROM scratch
ADD hello /
CMD ["/hello"]
  1. 通过docker build构建镜像

??命令:

docker image build <==> docker build
docker build -t staryjie/hello-docker .

Sending build context to Docker daemon  868.9kB
Step 1/3 : FROM scratch
 --->
Step 2/3 : ADD hello /
 ---> d6f5edefd7fa
Step 3/3 : CMD ["/hello"]
 ---> Running in e1db264875b9
Removing intermediate container e1db264875b9
 ---> 09be7d865fab
Successfully built 09be7d865fab
Successfully tagged staryjie/hello-docker:latest
  1. 通过docker history查看镜像的分层

??命令:

docker history
docker history staryjie/hello-docker:latest

IMAGE               CREATED             CREATED BY                                      SIZE                COMMENT
09be7d865fab        4 minutes ago       /bin/sh -c #(nop)  CMD ["/hello"]               0B
d6f5edefd7fa        4 minutes ago       /bin/sh -c #(nop) ADD file:e98243ff005d26728…   865kB

以上是关于6Docker Image的主要内容,如果未能解决你的问题,请参考以下文章

1-6docker数据共享与持久化

在片段着色器问题中读取 image1d

利用mask-image蒙层编写异形头像

如何从片段中检索gridview中的图像?

从片段中捕获图像

在 android studio kotlin 中将数据从活动传递到片段(不重复,这些方法不起作用)