首页 > 其他分享 >Dockerfile手册

Dockerfile手册

时间:2023-05-11 19:11:05浏览次数:34  
标签:RUN -- Dockerfile 手册 nginx usr local

基础知识

Dockerfile 是一个包含用于组合映像的命令的文本文档。可以使用在命令行中调用任何命令。 Docker 通
过读取 Dockerfile 中的指令自动生成映像。
docker build 命令用于从 Dockerfile 构建映像。可以在 docker build 命令中使用-f 标志指向文件系统中任何
位置的 Dockerfile。

docker build -f /path/to/a/Dockerfile

指令

FROM- 镜像从那里来
MAINTAINER- 镜像维护者信息
RUN- 构建镜像执行的命令,每一次RUN都会构建一层
CMD- 容器启动的命令,如果有多个则以最后一个为准,也可以为ENTRYPOINT提供参数
VOLUME- 定义数据卷,如果没有定义则使用默认
USER- 指定后续执行的用户组和用户
WORKDIR- 切换当前执行的工作目录
HEALTHCHECH- 健康检测指令
ARG- 变量属性值,但不在容器内部起作用
EXPOSE- 暴露端口
ENV- 变量属性值,容器内部也会起作用
ADD- 添加文件,如果是压缩文件也解压
COPY- 添加文件,以复制的形式
ENTRYPOINT- 容器进入时执行的命令

下面的例子是Centos版本

This my first nginx Dockerfile # Version 1.0

#Base images 基础镜像
FROM Centos

#ENV 设置环境变量
ENV PATH /usr/local/nginx/sbin:$PATH

#ADD 文件放在当前目录下,拷过去会自动解压
ADD nginx-1.8.0.tar.gz /usr/local/
ADD epel-release-latest-7.noarch.rpm /usr/local/

#RUN 执行以下命令
RUN rpm -ivh /usr/local/epel-release-latest-7.noarch.rpm
RUN yum install -y wget lftp gcc gcc-c++ make openssl-devel pcre-devel pcre && yum clean all

#WORKDIR 相当于 cd
WORKDIR /usr/local/nginx-1.8.0
116
RUN ./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_ssl_module --with-pcre && make && make install
RUN echo "daemon off;" >> /etc/nginx.conf

#EXPOSE 开启端口
EXPOSE 80

#CMD 容器启动后,运行以下命令
CMD ["nginx"]

标签:RUN,--,Dockerfile,手册,nginx,usr,local
From: https://www.cnblogs.com/mugetsukun/p/17391727.html

相关文章

  • 编写Dockerfile文件
    镜像是容器的基础,容器基于镜像定义的内容来运行。镜像是多层存储,每一层是前一层基础上进行的修改。定制镜像时,一般使用Dockerfile来完成。Dockerfile是一个文本文件,其内包含了一条条的指令,每一条指令构建镜像的其中一层,因此每一条指令的内容,就是描述该层应该如何构建。Dockerfil......
  • 胎教级培训手册:四步让ChatGPT成为小红书爆款大师
    文/高扬 最近公众号更新有些慢,因为我在配合陈楚(chenchu727)做小红书。 ChatGPT用在小红书上具有天然优势,然后再接合AI绘画,更是绝配。 AI绘画,陈楚已经研究很久了,后续会不断地输出教程。 学太多ChatGPT技巧,大家好像并没有感觉到能带来什么好处,可是,假如ChatGPT能给......
  • MySQL面试手册
    面试手册1、你接触过哪几种数据库软件,各自的优缺点是什么?2、MySQLbinlog的几种日志格式有什么区别?3、MySQL的存储引擎有哪几种?4、MySQL主从复制原理是什么?5、MySQL中myisam和innodb的区别?6、字段类型varchar和char的区别是什么?varchar(50)中50代表什么?7、关系型数据库和非......
  • Dockerfile、常用和不常用命令、dockerfile构建一个djagno项目、docker私有仓库、镜像
    目录1Dockerfile1.1常用和不常用命令1.2dockerfile构建一个djagno项目2docker私有仓库2.1镜像传到官方仓库2.2镜像分层2.3私有仓库搭建3dockercompose介绍4dockercompose部署flask+redis项目4.1新建flask项目app.py4.2编写Dockerfile--》用于构建flask项目的镜像4.3......
  • DockerFile之ENV使用
    一、Dockerfile代码FROMopenjdk:8-alpine#统一时间,做软链接。ln[参数][源文件或目录][目标文件或目录]RUNrm-rf/etc/localtime&&ln-snf/usr/share/zoneinfo/Asia/Shanghai/etc/localtimeRUNmkdir-p/tzh/zkuiADDconfig.cfg/tzh/zkui/config.cfgADDzkui......
  • 登堂入室:毫米波雷达开发手册之信号模型
    写在前面​ 深知新手在接触毫米波雷达板硬件时需要花费的沉没成本,因此在行将告别毫米波雷达之际,总结这两年以来在毫米波雷达上的一些经验和教训。​ 本文档用于为实现基于AWR1243BOOST等单板毫米波雷达开发提供参考指南与解决方案,主要包括硬件配置、基础参数、信号模型、应用DEM......
  • openGauss 5.0 一主两从 复制环境 搭建手册
    openGauss5.0一主两从复制环境搭建手册2023-04-0713:49850原创openGauss本文链接:https://www.cndba.cn/dave/article/116528在之前的博客我们了解了单机版的openGauss安装。 Linux7.6平台openGauss3.1.1单机版安装手册https://www.cndba.cn/dave/article/116......
  • MySQL备份命令帮助手册
    借助于mysqldump命令可以进行数据库的备份。用法:mysqldump[OPTIONS]database[tables]或:mysqldump[OPTIONS]--databases[OPTIONS]DB1[DB2DB3...]或:mysqldump[OPTIONS]--all-databases[OPTIONS]OPTIONS:OPTION默认描述-A,--all-databasesFALSE备份......
  • dockerfile 多FROM
    Docker17.05版本以后,新增了Dockerfile多阶段构建。所谓多阶段构建,实际上是允许一个Dockerfile中出现多个 FROM 指令。这样做有什么意义呢?老版本Docker中为什么不支持多个FROM指令在17.05版本之前的Docker,只允许Dockerfile中出现一个FROM指令,这得从镜像的本质说起。在《Do......
  • 扬帆起航:毫米波雷达开发手册之硬件配置
    写在前面​ 深知新手在接触毫米波雷达板硬件时需要花费的沉没成本,因此在行将告别毫米波雷达之际,总结这两年以来在毫米波雷达上的一些经验和教训。​ 本文档用于为实现基于AWR1243BOOST等单板毫米波雷达开发提供参考指南与解决方案,主要包括硬件配置、信号模型、信号处理流程、应......