美文网首页
docker第三天: 构建centos7+java8+maven

docker第三天: 构建centos7+java8+maven

作者: LOC_Thomas | 来源:发表于2017-08-15 15:30 被阅读0次

配置环境

通过学习docker,来编写Dockerfile来构建java的环境

centos的image构建

直接使用docker hub的centos镜像

java8的image

基于上面的centos的镜像构建

首先来看看编写的Dockerfile

FROM centos

MAINTAINER Dragon Long "dragonlong1986@126.com"
ADD jdk-8u144-linux-x64.tar.gz /usr/local

RUN \
  mkdir -p /usr/lib/jvm && \
  mv /usr/local/jdk1.8.0_144  /usr/lib/jvm/java-8-oracle && \
  update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-8-oracle/bin/java 300 && \
  update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/java-8-oracle/bin/javac 300

#环境变量
ENV JAVA_HOME /usr/lib/jvm/java-8-oracle/

首先下载 jdk-8u144-linux-x64.tar.gz 作为jdk的包,
接着通过ADD命令添加到docker容器
然后通过执行RUN命令,创建目录,然后把jdk移到固定的目录,然后用update-alternatives创建来维护系统命令java和javac的符号链接
最后通过ENV来设置环境变量

最后通过 docker build -t jdk8:v1 . 来进行build

maven的image

基于上面的jdk8来进行构建maven的镜像

所编写的Dockfile

FROM jdk8:v1

MAINTAINER Dragon Long "dragonlong1986@126.com"

ADD apache-maven-3.5.0-bin.tar.gz /usr/local

RUN \
  mkdir -p /usr/lib/maven && \
  mkdir -p /root/.m2 && \
  mv /usr/local/apache-maven-3.5.0  /usr/lib/maven/apache-maven-3.5.0 && \
  update-alternatives --install /usr/bin/mvn mvn /usr/lib/maven/apache-maven-3.5.0/bin/mvn 300

COPY settings.xml /root/.m2/settings.xml
ENV M2_HOME /usr/lib/maven/apache-maven-3.5.0

步骤和上面的差不多,下载maven安装包,安装maven,然后设置maven的settings.xml文件,最后设置环境变量,再通过 docker build -t maven:v1 . 来进行build。

验证

通过命令 docker images 来查看镜像
然后通过 docker run -it --rm maven:v1 bash 启动并且进入到容器,然后执行 mvn -version 来检验maven是否安装成功

git-client的image

基于上面的maven来构建git-client的镜像

先上Dockerfile的代码

FROM maven:v1
MAINTAINER Dragon Long, dragonlong1986@126.com

# Upgrading system
RUN \
    yum -y install git && \
    yum clean all

直接使用yum来进行安装git,然后清除掉yum,然后通过 docker build -t git:v1 .来构建镜像。

最后可以启动在git构成的image的容器,通过git命令来进行代码的clone和编译。

相关文章

网友评论

      本文标题:docker第三天: 构建centos7+java8+maven

      本文链接:https://www.haomeiwen.com/subject/khcvrxtx.html