springboot与docker集成三步曲之jdk环境安装

在windows上安装了boot2docker之后,就有了一个类似linux上的docker环境,可以进行在linux环境之上的一切镜像容器操作。这里介绍通过Dockerfile的方式在centos:latest基础镜像上构建一个jdk运行环境。

Dockerfile文件编写基本命令:

FROM:基础镜像,如果本地没有,会从远程仓库拉取。
MAINTAINER:镜像制作人信息,一般填写邮箱
WORKDIR:切换镜像当前工作空间,这个切换是永久的
RUN:在镜像中运行命令
ADD:将本地一个文件或文件夹加入到镜像中指定的目录下
COPY:拷贝文件
ENV:设置环境变量
CMD:启动容器之后,运行的命令

这里制作一个jdk8运行环境镜像,首先在本地新建一个目录:目录中放置Dockerfile,jdk-8u172-linux-x64.tar.gz文件。如下所示:

springboot与docker集成三步曲之jdk环境安装_第1张图片

这里的jdk压缩包,可以在构建容器的时候下载到容器中需要wget命令或者curl命令,也可以提前下载好,在构建的时候直接通过命令ADD 加入到镜像中。我这里是提前下载好。

Dockerfile内容如下:

FROM centos:latest
RUN (mkdir -p /usr/java)
ADD jdk-8u172-linux-x64.tar.gz /usr/java/
RUN (ln -s /usr/java/jdk1.8.0_172 /usr/java/latest)
ENV JAVA_HOME /usr/java/latest
ENV CLASSPATH .:/$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
ENV PATH $JAVA_HOME/bin:$PATH
CMD ["/bin/bash"]

gitshell命令行切换到centos7目录,执行构建。

docker build -t local/centos7-jdk8 .    #注意命令后面有个.,表示当前目录。

构建成功打印信息:

springboot与docker集成三步曲之jdk环境安装_第2张图片

我们查看镜像,启动容器,并且验证jdk。

springboot与docker集成三步曲之jdk环境安装_第3张图片

需要注意的是,Dockerfile中:add jdk-8u172-linux-x64.tar.gz /usr/java/ #这一步的时候已经默认解压了jdk,无需运行 tar xzf

/usr/java/jdk-8u172-linux-x64.tar.gz,否则会出现找不到错误:tar (child): /usr/java/jdk-8u172-linux-x64.tar.gz: Cannot open: No such file or directory 。

若是通过wget命令下载jdk-8u172-linux-x64.tar.gz,那么就需要运行解压命令。

至此,我们通过Dockerfile构建了一个jdk运行环境,为后面部署springboot项目做好了准备。因为springboot项目无需tomcat,所以这里没有安装tomcat,如果需要安装,思路也是一样的,需要下载或者加载本地已经下载好的tomcat压缩包,然后配置环境变量,启动容器的时候,启动tomcat。

你可能感兴趣的:(java)