dockerfile自定义镜像

本文介绍了Dockerfile的基本概念,其作为构建镜像的文本文件,包含了构建所需指令。Dockerfile的作用在于定义容器及应用程序的安装,并通过它创建统一的镜像模板。文章还提及了Dockerfile的基础结构,包括注释、维护者信息、镜像和容器指令,以及基础镜像设置。最后,文章将进入实践环节,展示Dockerfile中常用的操作指令。
摘要由CSDN通过智能技术生成

1、什么是 Dockerfile

Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。
2、Dockerfile的作用

安装dockerfile中的指令定义docker容器或者容器中的应用程序以及服务
Dockerfile制作一个镜像模板安装模板统一生成容器
3、Dockerfile的基础结构

#开头的表示注释行,说明dockerfile中的指令
维护者的信息
镜像操作指令
容器操作指令
基础镜像信息
4、Dockerfile中常见的操作指令和作用

FROM:指定创建镜像的基础镜像

MAINTAINER:Dockerfile作者信息,一般写的是联系方式

RUN:运行Linux系统的命令使用

CMD:指定容器启动执行的命令;启动容器中的服务

LABEL:指定生成镜像的源数据标签

EXPOSE:指定镜像容器监听端口号;发布服务使用

ENV:使用环境变量

ADD:对压缩文件进行解压缩;将数据移动到指定的目录

COPY:复制宿主机数据到镜像内部使用

WORKDIR:切换到镜像容器中的指定目录中

VOLUME:挂载数据卷到镜像容器中

USER:指定运行容器的用户

ARG:指定镜像的版本号信息

ONBUILD:创建镜像,作为其他镜像的基础镜像运行操作指令

ENTRYPOINT:指定运行容器启动过程执行命令,覆盖CMD参数

解释了这么多,下面开始实验部分

vim Dockerfile

//基于的基础镜像
FROM centos:7
//维护镜像的用户信息
MAINTAINER 
//镜像操作指令安装apach软件
RUN yum -y update //先更新yum源
RUN yum -y install httpd
//开启80端口
EXPOSE 80
//复制网站首页文件
ADD index.html /var/www/html/index.html
//将执行脚本复制到镜像中
ADD run.sh /run.sh 
RUN chmod 755 /run.sh
//启动容器时执行脚本
CMD ["/run.sh"] 

vim run.sh

#!/bin/bash
rm -rf /run/http/*
exec /usr/sbin/apachectl -D FOREGROUND

echo "web test" > index.html

//生成镜像
docker build -t http:centos . (注意别忘了末尾有.)

//新镜像运行容器
docker run -d -p 1216:80 httpd:centos

可以在浏览器中访问20.0.0.22:1216就能访问你部署的docker
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值