Docker系列(十六)——Dockerfile实战一之自定义docker镜像

版权声明:本文为博主原创文章,如果觉得写的不错需要转载,在转载时请注明博文出处! https://blog.csdn.net/Hello_World_QWP/article/details/84556341

                                    《 Dockerfile实战一之自定义docker镜像 》

前言

在前一篇文章中对 《 Dockerfile 基本理论概述 》进行了概述,主要详细的阐述了什么是 Dockerfile?Dockerfile 的基础相关知识?以及 Dockerfile 的执行流程,本篇将带领大家进行实操。

Dockerfile实战一之自定义docker镜像

初始 Dockerfile-自定义镜像 huazai/web/data/centos:v1.0
1、了解Base镜像(scratch)

在 Docker Hub 中可以很清晰的看到,基本上 99% 的镜像都是通过在 base 镜像中安装和配置需要的最终的软件环境所构建出来的新的镜像。


2、编写dockerfile脚本儿文件,
在 Docker Hub 中的 centos 镜像默认是没有 “ netstat -aon ” 命令,如下图:


但是现在有问题需要排查,需要这个命令来协助,这儿就需要其包含 “ netstat -aon ” 命令了;
进入到/opt/docker目下,创建一个dockerfile,输入命令 “ vi dockerfile ” ,并键入如下内容:

# 使用的 base 镜像
FROM centos
# 创建作者
MAINTAINER alibaba_huazai<[email protected]>

# 设置进入docker时初始落入的目录
ENV PATH /usr/local
WORKDIR $PATH

# 需要安装的组件包
RUN yum -y install net-tools

# 暴露80端口
EXPOSE 80

# 成功后执行的指令
CMD echo "building---------------------------sucessfully"
CMD /bin/bash

如下图(注意标红框处):

3、构建新的镜像,
输入命令 “ docker build -f /opt/docker/dockerfile -t huazai/web/data/centos:v1.0 . ”进行构建,构建成功后会获得一个全新的进行文件,如下图:

*注:docker build 命令最后有一个 . 表示当前目录,不能缺少,如果没有 . ,则会构建失败的。

4、运行与测试
启动刚才构建生成的docker镜像,输入命令 “ docker run -it 镜像ID ” ,如下图:

5、列出该镜像的详细信息,输入命令 “ docker inspect 容器ID”,如下图:

6、查看该镜像的变更历史信息,输入命令 “ docker history 镜像ID ”,如下图:


 好了,关于 Docker系列(十六)——Dockerfile实战一之自定义docker镜像 就写到这儿了,如果还有什么疑问或遇到什么问题欢迎扫码提问,也可以给我留言哦,我会一一详细的解答的。 
歇后语:“ 共同学习,共同进步 ”,也希望大家多多关注CSND的IT社区。


作       者: 华    仔
联系作者: [email protected]
来        源: CSDN (Chinese Software Developer Network)
原        文: https://blog.csdn.net/Hello_World_QWP/article/details/84556341
版权声明: 本文为博主原创文章,请在转载时务必注明博文出处!

猜你喜欢

转载自blog.csdn.net/Hello_World_QWP/article/details/84556341