Docker系列(三)Dockerfile 离线构建镜像

一、Dockfile介绍:

 

  Dockfile是一种被Docker程序解释的脚本,Dockerfile由一条一条的指令组成,每条指令对应Linux下面的一条命令。Docker程序将这些Dockerfile指令翻译真正的Linux命令。Dockerfile有自己书写格式和支持的命令,Docker程序解决这些命令间的依赖关系,类似于MakefileDocker程序将读取Dockerfile,根据指令生成定制的image。相比image这种黑盒子,Dockerfile这种显而易见的脚本更容易被使用者接受,它明确的表明image是怎么产生的。有了Dockerfile,当我们需要定制自己额外的需求时,只需在Dockerfile上添加或者修改指令,重新生成image即可,省去了敲命令的麻烦。

二、本文特点

  本文通过docker非联网状态下对docker镜像通过dockerfile搭建一个javaweb开发环境,其中jdk和tomcat都是来自本地,原始镜像,来自于本地已安装的centos原始镜像。

三、安装

  用Dockerfile构建一个Javaweb环境,主要分为3

1、准备工作

  将jdktomcat的进行解压,并且与Dockerfile放在同一目录。

2、创建Dockerfile文件,并编辑
FROM centos:latest 
MAINTAINER *** "***@******.com" 
# 复制本地当前目录下的jdk到容器内
ADD jdk-8u77-linux-x64/ /usr/local/java/jdk-8u77-linux-x64/
# 配置jdk环境
ENV JAVA_HOME /usr/local/java/jdk1.8.0_77 
ENV PATH $JAVA_HOME/bin:$PATH 
ENV CLASSPATH .:$JAVA_HOME/lib 

# 复制本地当前目录下的tomcat到容器内
COPY apache-tomcat-8.0.33/ /usr/local/tomcat/apache-tomcat-8.0.33/ 
#RUN unzip /usr/local/tomcat/apache-tomcat-8.0.33.zip 

#添加运行权限
RUN chmod +x /usr/local/tomcat/apache-tomcat-8.0.33/bin/*.sh 
RUN chmod +x /usr/local/java/jdk-8u77-linux-x64/bin/java

EXPOSE 8080 
# 定义执行入口
ENTRYPOINT /usr/local/tomcat/apache-tomcat-8.0.33/bin/startup.sh && /bin/bash 

 

原始镜像是centos:latest,然后将jdk的和tomcat的安装包放到和dockerfile相同的目录下。

3、通过Dockerfile构建镜像

  在Dockerfile所在的目录下构建镜像。

docker build -t="redstarofsleep/javaweb" .
4、最后运行镜像
docker run -d -t -i -p 8081:8080 --name javaweb redstarofsleep/javaweb 
 
 





转载于:https://www.cnblogs.com/hdulzt/p/7834677.html

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值