一、容器Container、仓库Repository、镜像Image的理解
镜像就像我们伟大的袁隆平的杂交水稻的种子;
容器就像我们伟大的袁隆平的稻田;
仓库就想我们伟大的袁隆平的粮仓;
二、学习Docker学习什么?
1.使用镜像
NOTE: 使用镜像就像使用种子种田一样。
docker run --name webserver -d -p 81:80 nginx
# 这句命令用我们伟大的袁隆平的话讲就是:docker选择了一块田地去耕田(run),并命名为webserver, 在这块田地上种了nginx种子。
docker exex -it webserver bash
# 这句命令用我们伟大的袁隆平的话讲就是:以交互的方式(-it)进入名为webserver的田地里,并在田地执行了bash动作。
2.制作镜像
NOTE: 制作镜像就像我们伟大的袁隆平在研究杂交水稻,基因能够遗传,Docker镜像一样也可以遗传。
- Dockerfile
From nginx
# 这句话的意思是,我们这次制作的种子(image镜像),遗传自Nginx
RUN echo '<h1>Hello, this is Docker!</h1>' > /usr/share/nginx/html/index.html
# 这句话的意思,我们在基础的基因上修改了一下下而已。
# 需要注意的是,Dockerfile 中每一个指令都会建立一层镜像,就想一层基因
- 合成镜像
docker build -t nginx:v3 .
nginx:v3 是镜像的名称,
image.png.
是构建镜像上下文的路径
- 我们可不可以从零开始制作镜像?
当然可以使用
image.pngFrom scratch
(scratch 打草稿)
- 可以一次制作多个基因
这种写法将会产生7层镜像
产生一层镜像
-
丢弃制作镜像过程中产生的副产品
-
从其它方式构建
NOTE: 原理都是一样的,把数据打包发给Docker引擎
image.png
image.png
image.png
image.png
网友评论