使用Dockerfile制作JDK+tomcat镜像详解架构师
2023-06-13 09:20:20 时间
1、准备好jdk和tomcat
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放在同一目录
2、编写Dockerfile,内容如下:
FROM centos:latest MAINTAINER john # now add java and tomcat support in the container ADD jdk-8u181-linux-x64.tar.gz /usr/local/ ADD apache-tomcat-8.5.32.tar.gz /usr/local/ # configuration of java and tomcat ENV ENV JAVA_HOME /usr/local/jdk1.8.0_181 ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar ENV CATALINA_HOME /usr/local/apache-tomcat-8.5.32 ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin # container listener port EXPOSE 8080 # startup web application services by self CMD /usr/local/apache-tomcat-8.5.32/bin/catalina.sh run
注意:测试发现catalina.sh start启动tomcat容器无法成功,用catalina.sh run正常的。
3、设置Dockerfile权限
chmod 777 Dockerfile
4、通过Dockerfile生成tomcat镜像
docker build -t tomcat8:v1 .
5、docker images查看刚刚构建的镜像
REPOSITORY TAG IMAGE ID CREATED SIZE tomcat8 v1 12bd97615c88 About an hour ago 595MB
6、测试镜像,运行容器
sudo docker run -d -p 8058:8080 --name mytomcat tomcat8:v1 sudo docker run -d -p 8058:8080 -v /opt/docker/lynch/webapps:/usr/local/apache-tomcat-8.5.32/webapps --name mytomcat tomcat8:v1 sudo 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目录
7、上传镜像到本地镜像仓库
docker tag 12bd97615c88 harbor.baidu.cn/library/tomcat:8.5.32 ##12bd97615c88 刚才创建的镜像ID docker login -u admin -p Harborbaidu harbor.baidu.cn docker push harbor.baidu.cn/library/tomcat:8.5.32
8、DEMO
FROM java:8-jdk COPY ./user-service/target/user-service.jar /user-service.jar ENV TZ Asia/Shanghai ENV JAVA_OPS -Duser.timezone=Asia/Shanghai EXPOSE 8080 30001 ENTRYPOINT ["java", "-jar", "-Djava.security.egd=file:/dev/./urandom", "/user-service.jar"]
6771.html
架构架构师架构设计相关文章
- ubuntu卸载JDK
- idea配置Tomcat_tomcat docbase
- Eclipse和JDK安装教程(22年8月)[通俗易懂]
- 【JDK8 新特性1】JDK 8 Lambda表达式
- 爱说JDK集合-List源码剖析
- 为NetBeans配置开发Java所需的JDK路径
- Tencent Kona JDK参与开放原子“校源行”活动
- Jvisualvm是JDK自带的一款性能分析工具详解编程语言
- windows环境中JDK环境变量配置详解编程语言
- 深入 Linux 中安装设置 JDK(linux设置jdk)
- Linux 升级 JDK:突破技术壁垒(linux升级jdk)
- Linux系统下在线安装JDK步骤(linux在线安装jdk)
- Oracle使用之前,你必须要装好JDK(oracle需要jdk吗)
- 版本更改Linux的JDK版本:解决Java多版本问题(linux更改jdk)
- Linux下一步步搭建Tomcat环境(linux配置tomcat环境变量)
- Linux卸载JDK:一步一步指南(linux卸载jdk命令)
- Linux下快速启动Tomcat服务(linux启动tomcat)
- Linux 享受 JDK 升级带来的更新之旅(jdk升级linux)
- Oracle 痛下杀手:Java 浏览器插件将在 JDK 9 上被彻底弃用
- 在Linux系统下搭建JDK环境(在Linux下安装jdk)
- Oracle发布新版本JDK激发编程热情(jdk oracle版本)
- Oracle JDK查询利用工具更高效完成操作(oracle jdk查询)
- 别于Oracle JDK其他开发者Java选择(oracle jdk以外)