dockerfile编译安装httpd

dockerfile编译安装httpd

指令

FROM

格式为 FROM <image> 或 FROM <image>:<tag>

LABEL MAINTAINER

格式为 LABEL MAINTAINER <name email_address> ,指定维护者
信息

RUN

格式为 
RUN <command> ,RUN ["/bin/bash","-c","echo hello"]
在shell终端中运⾏命令,即/bin/sh -c
或 
RUN ["executable","param1","param2"],RUN echo "hello world\nhello tom" > /tmp/abc && \
 cat /tmp/abc
使⽤exec执⾏,每条RUN指令将在当前镜像基础上执⾏指定命令,并提交为新的镜像。当命令较⻓时可以使⽤ \ 来换⾏

CMD

CMD ["executable","param1","param2"] 使⽤exec执⾏,推荐⽅式
CMD command param1 param2 在/bin/sh中执⾏,提供给需要交互的应⽤
CMD ["param1","param2"] 提供给ENTRYPOINT的默认参数

EXPOSE

格式为 EXPOSE <port> [<port>...] 
EXPOSE 22 80 8443

ENV

格式为 ENV <key> <value> 。指定⼀个环境变量,会被后续RUN指令
使⽤,并在容器运⾏时保持
ENV PG_MAJOR 9.3
ENV PG_VERSION 9.3.4
RUN curl -SL http://example.com/postgres-$PG_VERSION.tar.xz
 | tar -xJC /usr/src/postgress && ...
ENV PATH /usr/local/postgres-$PG_MAJOR/bin:$PATH

ENTRYPOINT

ENTRYPOINT command param1 param2(在shell中执⾏)
每个Dockerfile中只能有⼀个ENTRYPOINT

ENTRYPOINT ["/usr/sbin/nginx"]

ADD

ADD <src> <dest>
将复制指定的<src>到容器中的<dest>。

其中<src>可以是Dockerfile所在目录的一个相对路径(文件或目录)
ADD files/* /usr/src/ 
可以是一个URL
ADD https://downloads.apache.org/apr/apr-util-1.6.1.tar.gz /usr/src/
可以是一个tar文件(会自动解压为目录)
ADD apr-1.7.0.tar.gz /usr/src/ 

COPY

COPY <src> <dest>
复制本地主机的<src>(为Dockerfile所在目录的相对路径,文件或目录)为容器中的<dest>。目标路径不存在时会自动创建

COPY files /usr/src/

VOLUME

VOLUME ["/data"]
创建一个可以从本地主机或其他容器挂载的挂载点,一般用来存放数据库和需要保持的数据

USER

USER 
指定运行容器时的用户名或UID,后续的RUN也会使用指定用户
RUN groupadd -r postgres && useradd -r -g postgres postgres

WORKDIR

指令配置⼯作⽬录

ONBUILD

ONBUILD [INSTRUCTION]
配置当所创建的镜像作为其他镜像的基础镜像时,所执⾏的操作指令

ONBUILD ADD files /usr/src/

目录结构

#现在网上把httpd的三个包下载下来然后创建一个httpd的目录。在httpd的目录下面创建一个files目录放三个安装包。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值