编写Dockerfile制作Web应用系统nginx镜像,生成镜像nginx:v1.1,并推送其到私有仓库

Docker 镜像是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)。镜像不包含任何动态数据,其内容在构建之后也不会被改变。镜像的定制实际上就是定制每一层所添加的配置、文件。如果我们可以把每一层修改、安装、构建、操作的命令都写入一个脚本,用这个脚本来构建、定制镜像,那么之前提及的无法重复的问题、镜像构建透明性的问题、体积的问题就都会解决。这个脚本就是 Dockerfile

Docker常用参数

FROM                    # 基础镜像,当前新镜像是基于哪个镜像的

MAINTAINER                 # 镜像维护者的姓名混合邮箱地址

RUN                     # 容器构建时需要运行的命令

EXPOSE                # 当前容器对外保留出的端口

WORKDIR                   # 指定在创建容器后,终端默认登录的进来工作目录,一个落脚点

ENV                      # 用来在构建镜像过程中设置环境变量

ADD                      # 将宿主机目录下的文件拷贝进镜像且ADD命令会自动处理URL和解压tar压缩包

COPY                    # 类似ADD,拷贝文件和目录到镜像中!

VOLUME                # 容器数据卷,用于数据保存和持久化工作

CMD                     # 指定一个容器启动时要运行的命令,dockerFile中可以有多个CMD指令,但只有最后一个生效!

ENTRYPOINT         # 指定一个容器启动时要运行的命令!和CMD一样

ONBUILD                     # 当构建一个被继承的DockerFile时运行命令,父镜像在被子镜像继承后,父镜像的ONBUILD  被触发

编写Dockerfile制作Web应用系统nginx镜像,生成镜像nginx:v1.1,并推送其到私有仓库。

指定打包内容:

1)基于centos基础镜像;
2)指定作者信息;
3)安装nginx服务,将提供的dest目录(提供默认主页index.html)传到镜像内,并将dest目录内的前端文件复制到nginx的工作目录;
4)暴露80端口;
5)设置服务自启动。
6)验证镜像。

1.编写dockerfile文件

2.构建

3.验证镜像

4.镜像推送到仓库

5.查看是否推送成功

三、Dockerfile快速搭建自己专属的LAMP环境,生成镜像lamp:v1.1,并推送到私有仓库。具体要求如下:

(1)基于centos:7基础镜像;

(2)指定作者信息;

(3)安装httpd、mysql、mysql-server、php、php-mysql、php-gd;

(4)暴露80和3306端口;

(5)设置服务自启动。

(6)验证镜像。

1.构建Dockerfile文件

2.镜像推送

3.查看是否推送成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值