Dockerfile 范例

该博客介绍了如何使用Dockerfile从centos:7基础镜像构建新的镜像,并配置工作目录、创建目录、添加与解压JDK和Tomcat文件,然后设置环境变量并暴露8080端口。最后,说明了容器启动时必须有前台任务以保持容器运行,并提供了使用docker build命令构建镜像的方法。

#指明构建的新镜像是来自于 centos:7 , ( 如果本地有这个镜像,则用这个镜像, 如果没有,则从远程拉取)

FROM centos:7

#通过镜像标签声明了作者信息

LABEL maintainer="作者姓名等等"

#设置工作目录

WORKDIR  /usr/local

#新镜像构建成功以后创建指定目录 (这一步类似于: 根据原始镜像创建,启动了容器, 在容器中创建了目录 , run命令用来在dockerfile文件中指定要执行的linux命令) 

RUN mdkir -p /usr/local/java && mkdir -p /usr/local/java  

# 拷贝文件到镜像中并解压

ADD  宿主机jdk文件路径 或者 jdk官网download的url     /usr/local/java

ADD  宿主机tomcat文件路径  或者 tomcat官网下载文件url    /usr/local/tomcat

# 暴露容器运行时的  8080  监听端口给外部

EXPOSE  8080

#设置容器内  JAVA_HOME  环境变量

ENV  JAVA_HOME /usr/local/java/jdk-11.0.6

ENV  PATH  $PATH:$JAVA_HOME/bin

# 启动容器时启动tomcat   run的含义是运行并阻塞控制台--方便看清日志

CMD  ["/usr/local/tomcat/apache-tomcat-9.0.37/bin/catalina.sh" , "run"]

 

容器启动后必须要有前台任务 , 如果容器检测到自己没有前台任务, 那么他会自动退出,所以创建容器后,要保证容器启动了前台任务(都启成后台任务容器会自己退出)

 

运行dockerfile:

docker build -f   Dockerfile -t  mycentos:7(创建的镜像名)   /root/ local/deckerfile(ADD指令所需的资源路径)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值