首页 > 其他分享 >Dockfile 介绍

Dockfile 介绍

时间:2024-01-06 15:05:14浏览次数:32  
标签:tomcat 介绍 Dockfile usr ENV HOME 镜像 local

Dockfile 介绍_apache


4.1 From(指定基础镜像)

  • Dockerfile必须指定FROM ,并且是第一行,属于构建命令。
  • 表示基于那个基础镜像来构建
  • 基础镜像可以是本地镜像也可以是远程仓库的镜像

语法: FROM image name

4.2 MAINTAINER(指定镜像作者信息)

用来指定构建镜像的作者信息,方便后续通过docker inspect命令查看,对镜像没有实际的影响。

语法: MAINTAINER author name

4.3 RUN (指定需要执行的shell命令)

该命令会在新创建的镜像上添加新的层面。docker build 时运行。

格式:RUN  command命令

4.4 CMD(设置容器启动时执行的操作)

可以是执行自定义脚本,也可以是执行系统命令,该指令只能在文件中存在一次,如果有多个,则只会执行最后一条。docker run时运行。

格式: CMD ["executable","param1","param2"] 或 CMD ["param1","param2"]

4.5 ENTRYPOINT(设置容器启动时执行的操作)

设置指令,指定容器启动时执行的命令,可以追加命令,但是只有最后一个ENTRYPOINT有效。

格式: ENTRYPOINT ["executable", "param1","param2"]

4.6 USER(设置容器执行shell命令的用户)

设置指令,设置启动该容器的用户,默认是root用户。

格式:USER root

4.7 EXPOSE(宿主和容器端口映射设置)

指定容器需要映射到宿主机器的端口。

格式: EXPOSE port

4.8 ENV(设置环境变量)

ENV指令可以用于为docker容器设置环境变量。

示例:ENV JAVA/HOME /usr/local/jdk1.8.0.25  指定java环境变量

4.9 ADD(文件复制命令)

复制文件命令,支持自动下载和解压

格式:ADD  源路径  目标路径

优点:在执行 <源文件> 为 tar 压缩文件的话,压缩格式为 gzip, bzip2 以及 xz 的情况下,会自动复制并解压到 <目标路径>。

缺点:在不解压的前提下,无法复制 tar 压缩文件。会令镜像构建缓存失效,从而可能会令镜像构建变得比较缓慢。具体是否使用,可以根据是否需要自动解压来决定。

说明:参数:destination 是容器内的路径。source 可以是 下载文件的URL 或者宿主主机的目录

4.10 COPY

类似ADD命令,将地文件拷贝到镜像中

本地目录为源目录时,官方推荐使用COPY。

4.11 VOLUME (指定挂载点)

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

4.12 WORKDIR(设置工作目录)

指定RUN、CMD与ENTRYPOINT 命令的工作目录。

格式:  WORKDIR  /path/to/workdir


FROM centos
#设置作者
MAINTAINER xiaoming [email protected]
#拷贝tomcat jdk 到镜像内并解压
ADD apache-tomcat-8.5.30.tar.gz /usr/local/tomcat
ADD jdk-8u202-linux-x64.tar.gz /usr/local/jdk
#设置工作目录
ENV MYPATH /usr/local
WORKDIR $MYPATH
#配置jdk 和tomcat的环境变量
ENV JAVA_HOME /usr/local/jdk/jdk1.8.0_202
ENV CATALINA_HOME /usr/local/tomcat/apache-tomcat-8.5.30
ENV CATALINA_BASE /usr/local/tomcat/apache-tomcat-8.5.30
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin
#设置暴露的端口
EXPOSE 8080
#运行tomcat
CMD /usr/local/tomcat/apache-tomcat-8.5.30/bin/startup.sh && tail -f /usr/local/tomcat/apache-tomcat-8.5.30/logs/catalina.out


1.https://cloud.tencent.com/developer/article/2354336?areaId=106005



参考资料:


标签:tomcat,介绍,Dockfile,usr,ENV,HOME,镜像,local
From: https://blog.51cto.com/u_7050893/9127200

相关文章

  • 求取植物冠层数据:CAN-EYE工具的使用方法介绍
      本文介绍植被冠层参数计算软件CAN-EYE的具体使用方法。  在文章CAN-EYE冠层数据模拟工具的下载、安装中,我们介绍了CAN-EYE软件的下载、安装方法;本文就对该软件的具体使用方法进行介绍。  CAN-EYE软件计算LAI、FVC等各类植被参数,都需要基于相机所拍摄的真彩色或黑白植被图......
  • python-数据解析-bs4介绍
    一、数据解析方式-bs41、 爬虫数据的解析常用方式有三种: 1、正则表达式2、bs43、xpath解析2、本次主要学习bs4,首先要先准备好环境,即要安装使用beautifulSoup,这里已经安装好了bs4模块,如下:pipinstallbs4和pipinstalllxml 3、通过一个实例理解bs......
  • Capture One Enterprise最新版软件介绍及资源分享
    软件介绍:CaptureOneEnterprise中文免激活版通过定制色彩配置文件,为500多种相机配置精准颜色。缩短导入和导出时间,获得顺畅的编辑体验。通过一大套精确的色彩编辑工具,轻松实现您的创意愿景。通过先进可靠的联机拍摄解决方案,即时抓拍、查看、编辑图像。使用可定制界面节省时间和精......
  • 智能八电极脂肪秤pcba方案介绍
     智能八电极脂肪秤是一种测量人体脂肪含量的设备,它可以帮助人们了解自己的身体状况,从而更好地进行健康管理和减肥。在本文中,我们将从功能、运用、原理和结构四个方面了解智能八电极脂肪秤方案产品。 一、功能 智能八电极脂肪秤方案的主要功能: 1.测量范围:智能八电极脂肪......
  • 智能八电极脂肪秤pcba方案介绍
    智能八电极脂肪秤是一种测量人体脂肪含量的设备,它可以帮助人们了解自己的身体状况,从而更好地进行健康管理和减肥。在本文中,我们将从功能、运用、原理和结构四个方面了解智能八电极脂肪秤方案产品。一、功能智能八电极脂肪秤方案的主要功能:1.测量范围:智能八电极......
  • 代理IP常见的三种网络协议介绍
    代理IP也叫网络代理,是一种特殊的网络服务,允许一个网络终端通过这个服务与另一个网络终端进行非直接的连接。伴随着互联网的发展,目前越来越多的业务依赖于代理IP才能顺利开展。一般来说我们使用的IP代理一般会涉及到三种协议,分别是:HTTP、HTTPS以及SOCKS5。HTTPHTTP协议即超文本传输......
  • 云消息队列 Kafka 版生态谈第一期:无代码转储能力介绍
    作者:娜米云消息队列 Kafka版为什么需要做无代码转储云消息队列Kafka版本身是一个分布式流处理平台,具有高吞吐量、低延迟和可扩展性等特性。它被广泛应用于实时数据处理和流式数据传输的场景。然而,为了将云消息队列 Kafka版与其他数据源和数据目的地集成,需要额外的开发/组件来......
  • ICT行业“样品”相关业务挑战及解决方案介绍
    ICT行业供应链样品相关业务介绍在信息通信技术(ICT)行业中,研发打样、结构件打样和非0价打样是研发和产品设计过程中的重要环节。下面我会通过具体的业务场景来解释这些概念:1、研发打样场景例子:一家手机制造公司正在开发一款新型智能手机。在产品设计阶段,他们需要制作一个或多个原型(即......
  • 【愚公系列】2024年01月 WPF控件专题 Label、TextBox、PasswordBox控件介绍
    ......
  • 【flink番外篇】7、flink的State(Keyed State和operator state)介绍及示例 - 完整版
    文章目录Flink系列文章一、maven依赖二、KeyedState1、KeyedState介绍及示例2、KeyedState状态有效期(TTL)1)、过期数据的清理2)、全量快照时进行清理3)、增量数据清理4)、在RocksDB压缩时清理3、keyedstate示例:实现地铁站哪个进站口人数最多1)、javabean2)、实现3)、验证三、O......