如何制作Base Image--简单版(5)

PS小技巧:不运行sudo直接运行docker命令

sudo groupadd  docker
sudo  gpasswd -a docker  docker  #将用户加入docker组
sudo  service docker restart
#重新登录shell

一、实验概述

编译一个hello-world的C语言可执行文件,然后将这个文件制作成为Base Image

二、实验操作

1、在docker家目录下创建hello-world目录,上传编译后的hello-world到此目录下

#include

int main()
{
   printf("hello docker\n");
}

2、创建Dockerfile文件

FROM scratch #代表制作Base Image
ADD hello /
CMD ["/hello"]

3、Build

[docker@localhost hello-world]$ docker build -t zheng007/hello-world .
Sending build context to Docker daemon  847.9kB
Step 1/3 : FROM scratch
 ---> 
Step 2/3 : ADD hello /
 ---> 130bb58f10ec
Step 3/3 : CMD ["/hello"]
 ---> Running in 7aec355ea4c4
Removing intermediate container 7aec355ea4c4
 ---> c546aefca549
Successfully built c546aefca549
Successfully tagged zheng007/hello-world:latest
[docker@localhost hello-world]$ docker image ls
REPOSITORY             TAG                 IMAGE ID            CREATED             SIZE
zheng007/hello-world   latest              c546aefca549        11 seconds ago      844kB

4、查看镜像的分层

[docker@localhost hello-world]$ docker history c546aefca549
IMAGE               CREATED             CREATED BY                                      SIZE                COMMENT
c546aefca549        2 minutes ago       /bin/sh -c #(nop)  CMD ["/hello"]               0B                  
130bb58f10ec        2 minutes ago       /bin/sh -c #(nop) ADD file:277ca2e4013da55b0…   844kB  

5、执行新创建的Base Image

[docker@localhost hello-world]$ docker run zheng007/hello-world
hello docker

 

你可能感兴趣的:(Docker成长之路)