Dockerfile構(gòu)建jdk鏡像和tomcat鏡像

[TOC]

一、用vagrant up拉起一個(gè)基于docker的centos7虛擬機(jī)

# -*- mode: ruby -*-
# vi: set ft=ruby :


Vagrant.configure("2") do |config|
  config.vm.box = "centos7-base-docker"

  config.vm.hostname="centos7-docker-standalone"

  config.vm.synced_folder "./share", "/home/vagrant/share"

  config.vm.network "private_network", ip: "192.168.10.10"

  config.vm.provider "virtualbox" do |v|
    v.name = "centos7-docker-standalone"
    v.memory = 4096
    v.cpus = 2
  end
end

二、拉取一個(gè)centos7的鏡像

$ docker pull centos
$ docker run -it centos /bin/bash
  /]# cat /etc/redhat-release
pull-centos7-images
pull-centos7-images

三、準(zhǔn)備Dockerfile,構(gòu)建centos7-jdk8鏡像并驗(yàn)證

1、準(zhǔn)備Dockerfile

FROM centos
MAINTAINER jacky zheng
ENV REFRESHED_AT 2018-09-25 23:45

ADD jdk-8u181-linux-x64.tar.gz /usr/java/

ENV JAVA_HOME /usr/java/jdk1.8.0_181
ENV CLASSPATH $JAVA_HOME/lib;$JAVA_HOME/jre/lib
ENV PATH $PATH:$JAVA_HOME/bin
prepare-centos7-jdk8-dockerfile
prepare-centos7-jdk8-dockerfile

2、利用docker build -t jacky/centos7-jdk8 . 構(gòu)建鏡像

$ docker build -t jacky/centos7-jdk8 .
build-centos7-jdk8-image
build-centos7-jdk8-image

3、驗(yàn)證構(gòu)建的鏡像是否正確

$ docker run -it jacky/centos7-jdk8 /bin/bash
  /]# java -version
  /]# javac -version
run-a-centos7-jdk8-container
run-a-centos7-jdk8-container

四、利用構(gòu)建的jdk鏡像,構(gòu)建tomcat鏡像

1、準(zhǔn)備構(gòu)建tomcat鏡像的Dockerfile

FROM jacky/centos7-jdk8
MAINTAINER jacky zheng 
ENV REFRESHED_AT 2018-09-26 22:45

ADD apache-tomcat-9.0.12.tar.gz /usr/tomcat/

ENV CATALINA_HOME /usr/tomcat/apache-tomcat-9.0.12
ENV CATALINA_BASE $CATALINA_HOME
ENV PATH $PATH:$CATALINA_HOME/lib:$CATALINA_HOME/bin

#暴露端口8080
EXPOSE 8080

#啟動(dòng)時(shí)運(yùn)行tomcat
CMD ["/usr/tomcat/apache-tomcat-9.0.12/bin/catalina.sh", "run"]

2、構(gòu)建tomcat鏡像,并驗(yàn)證

$ ls -l
$ docker images
$ docker ps -a
$ docker build -t jacky/centos7-tomcat9 .
$ docker images
$ docker run -d -p 8081:8080 --name tomcat9-test jacky/centos7-tomcat9
build-centos7-tomcat9-image
build-centos7-tomcat9-image

run-a-centos7-tomcat9-container
run-a-centos7-tomcat9-container

test-tomcat9
test-tomcat9
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容