建構Tomcat鏡像
1.建構基礎鏡像
mkdir /opt/dockerfile/system/ubuntu
vim /opt/dockerfile/system/ubuntu/Dockerfile
#Ubuntu Base Image
FROM ubuntu:20.04
MAINTAINER shitouweb [email protected]
RUN apt-get update && apt-get install -y wget libpcre3 libpcre3-dev openssl libssl-dev zlib1g-dev iproute2 net-tools iotop gcc g++ automake build-essential unzip tzdata
RUN groupadd www -g 2020 && useradd www -u 2020 -g www
vim /opt/dockerfile/system/ubuntu/build-command.sh
#!/bin/bash
sudo docker build -t ubuntu-base:20.04 .
2.建構JDK鏡像
mkdir /opt/dockerfile/web/jdk/jdk-8U251
vim /opt/dockerfile/web/jdk/jdk-8U251/Dockerfile
#JDK-8U251
vim /opt/dockerfile/web/jdk/jdk-8U251/profile #可以在虛拟機中先搭建java環境變量然後複制profile檔案即可,添加以下
export JAVA_HOME=/usr/local/jdk
export CLASSPATH=$JAVA_HOME/jre/lib/rt.jar:$JRE_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
vim /opt/dockerfile/web/jdk/jdk-8U251/build-command.sh
sudo docker build -t ubuntu20.04-jkd:8U251 .
3.建構Tomcat鏡像
mkdir /opt/dockerfile/web/tomcat/tomcat-9.0.35
vim /opt/dockerfile/web/tomcat/tomcat-9.0.35/Dockerfile
FROM ubuntu20.04-jkd:8U251
LABEL shitouweb [email protected]
ADD apache-tomcat-9.0.35.tar.gz /apps
RUN ln -sv /apps/apache-tomcat-9.0.35 /apps/tomcat
vim /opt/dockerfile/web/tomcat/tomcat-9.0.35/build-command.sh
sudo docker build -t ubuntu20.04-tomcat:9.0.35 .
4.建構業務鏡像
mkdir /opt/dockerfile/web/tomcat/tomcat-app1
vim /opt/dockerfile/web/tomcat/tomcat-app1/Dockerfile
FROM ubuntu20.04-tomcat:9.0.35
vim /opt/dockerfile/web/tomcat/tomcat-app1/buile-command.sh
sudo docker build -t ubuntu20.04-tomcat0.0.35-webapps:1 .
vim /opt/dockerfile/web/tomcat/tomcat-app1/run_tomcat.sh可執行檔案必須增加執行權限,否則在容器中不能執行
su -c '/apps/tomcat/bin/catalina.sh start' - www
tail -f /etc/hosts
修改server.xml
<Host name="localhost" appBase="/data/tomcat/webapps"
unpackWARs="false" autoDeploy="false">
注意:在DockerFile中寫入的CMD後面的指令不執行主要是因為啟動的時候指定了shell