{"attachments":[],"attr":{},"bold":false,"channelId":412,"checked":true,"collectsCount":0,"commentsCount":0,"commentsDay":0,"contentCount":{"collects":0,"collectsDay":0,"collectsMonth":0,"collectsWeek":0,"comments":0,"commentsDay":0,"commentsMonth":0,"commentsWeek":0,"downloads":0,"downloadsDay":0,"downloadsMonth":0,"downloadsWeek":0,"downs":0,"id":101583,"likes":0,"likesDay":0,"likesMonth":0,"likesWeek":0,"ups":0,"upsDay":0,"upsMonth":0,"upsWeek":0,"views":252,"viewsDay":0,"viewsMonth":7,"viewsWeek":1},"contentExt":{"bold":false,"editDate":1662617228000,"id":101583,"releaseDate":1662614599000,"stitle":"使用Dockerfile制作JDK+tomcat镜像","title":"使用Dockerfile制作JDK+tomcat镜像","tplMobileContent":""},"contentImgWhole":"使用Dockerfile制作JDK+tomcat镜像","contentTxt":{"id":101583,"txt":"
apache-tomcat-8.5.32.tar.gz
jdk-8u181-linux-x64.tar.gz
注意:
a、jdk和tomcat记得从官网下载,否则制作出来的镜像容易出现不兼容问题。
b、apache-tomcat-8.5.32.tar.gz、jdk-8u181-linux-x64.tar.gz、Dockerfile放在同一目录
FROM centos:latest\r\nMAINTAINER john\r\n# now add java and tomcat support in the container \r\nADD jdk-8u181-linux-x64.tar.gz /usr/local/ \r\nADD apache-tomcat-8.5.32.tar.gz /usr/local/ \r\n\r\n# configuration of java and tomcat ENV \r\nENV JAVA_HOME /usr/local/jdk1.8.0_181 \r\nENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar \r\nENV CATALINA_HOME /usr/local/apache-tomcat-8.5.32\r\nENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin \r\n\r\n# container listener port \r\nEXPOSE 8080\r\n\r\n# startup web application services by self \r\nCMD /usr/local/apache-tomcat-8.5.32/bin/catalina.sh run
注意:测试发现catalina.sh start启动tomcat容器无法成功,用catalina.sh run正常的。
chmod 777 Dockerfile
docker build -t tomcat8:v1 .
REPOSITORY TAG IMAGE ID CREATED SIZE\r\ntomcat8 v1 12bd97615c88 About an hour ago 595MB
sudo docker run -d -p 8058:8080 --name mytomcat tomcat8:v1\r\nsudo docker run -d -p 8058:8080 -v /opt/docker/lynch/webapps:/usr/local/apache-tomcat-8.5.32/webapps --name mytomcat tomcat8:v1\r\nsudo docker run -e "SPRING_PROFILES_ACTIVE=uat" -d -p 8080:8080 -p 30008:30008 -v /root/dev/docker/webapps:/usr/local/apache-tomcat-8.5.32/webapps --name game-server tomcat8:uat
注意:/opt/docker/lynch/webapps宿主机目录,存放tomcat项目;/usr/local/apache-tomcat-8.5.32/webapps -->tomcat容器的webapps目录
docker tag 12bd97615c88 harbor.baidu.cn/library/tomcat:8.5.32 ##12bd97615c88 刚才创建的镜像ID\r\ndocker login -u admin -p Harborbaidu harbor.baidu.cn\r\ndocker push harbor.baidu.cn/library/tomcat:8.5.32
FROM java:8-jdk\r\nCOPY ./user-service/target/user-service.jar /user-service.jar\r\nENV TZ Asia/Shanghai\r\nENV JAVA_OPS -Duser.timezone=Asia/Shanghai\r\nEXPOSE 8080 30001\r\nENTRYPOINT ["java", "-jar", "-Djava.security.egd=file:/dev/./urandom", "/user-service.jar"]
apache-tomcat-8.5.32.tar.gz
jdk-8u181-linux-x64.tar.gz
注意:
a、jdk和tomcat记得从官网下载,否则制作出来的镜像容易出现不兼容问题。
b、apache-tomcat-8.5.32.tar.gz、jdk-8u181-linux-x64.tar.gz、Dockerfile放在同一目录
FROM centos:latest\r\nMAINTAINER john\r\n# now add java and tomcat support in the container \r\nADD jdk-8u181-linux-x64.tar.gz /usr/local/ \r\nADD apache-tomcat-8.5.32.tar.gz /usr/local/ \r\n\r\n# configuration of java and tomcat ENV \r\nENV JAVA_HOME /usr/local/jdk1.8.0_181 \r\nENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar \r\nENV CATALINA_HOME /usr/local/apache-tomcat-8.5.32\r\nENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin \r\n\r\n# container listener port \r\nEXPOSE 8080\r\n\r\n# startup web application services by self \r\nCMD /usr/local/apache-tomcat-8.5.32/bin/catalina.sh run
注意:测试发现catalina.sh start启动tomcat容器无法成功,用catalina.sh run正常的。
chmod 777 Dockerfile
docker build -t tomcat8:v1 .
REPOSITORY TAG IMAGE ID CREATED SIZE\r\ntomcat8 v1 12bd97615c88 About an hour ago 595MB
sudo docker run -d -p 8058:8080 --name mytomcat tomcat8:v1\r\nsudo docker run -d -p 8058:8080 -v /opt/docker/lynch/webapps:/usr/local/apache-tomcat-8.5.32/webapps --name mytomcat tomcat8:v1\r\nsudo docker run -e "SPRING_PROFILES_ACTIVE=uat" -d -p 8080:8080 -p 30008:30008 -v /root/dev/docker/webapps:/usr/local/apache-tomcat-8.5.32/webapps --name game-server tomcat8:uat
注意:/opt/docker/lynch/webapps宿主机目录,存放tomcat项目;/usr/local/apache-tomcat-8.5.32/webapps -->tomcat容器的webapps目录
docker tag 12bd97615c88 harbor.baidu.cn/library/tomcat:8.5.32 ##12bd97615c88 刚才创建的镜像ID\r\ndocker login -u admin -p Harborbaidu harbor.baidu.cn\r\ndocker push harbor.baidu.cn/library/tomcat:8.5.32
FROM java:8-jdk\r\nCOPY ./user-service/target/user-service.jar /user-service.jar\r\nENV TZ Asia/Shanghai\r\nENV JAVA_OPS -Duser.timezone=Asia/Shanghai\r\nEXPOSE 8080 30001\r\nENTRYPOINT ["java", "-jar", "-Djava.security.egd=file:/dev/./urandom", "/user-service.jar"]