博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Docker-部署Java项目
阅读量:3957 次
发布时间:2019-05-24

本文共 2123 字,大约阅读时间需要 7 分钟。

你未必出类拔萃但一定与众不同

Docker部署Java项目

基于Centos7.6服务器操作

Docker部署jar包项目

采用打包成镜像的方式部署

1.创建一个文件夹

将jar包类型项目传入

2.创建Dockerfile

在这里插入图片描述

3.对Dockerfile进行编辑

#FROM命令定义构建镜像的基础镜像,该条必须是dockerfile的首个命令FROM java:8#用于指定持久化目录VOLUME /temp#将本地文件添加到容器中,tar类型文件会自动解压(网络压缩资源不会被解压),可以访问网络资源,类似wgetADD schoolinfo.jar schoolinfo.jar#构建镜像时执行的命令RUN bash -c 'touch /schoolinfo.jar'#配置容器,使其可执行化。配合CMD可省去"application",只使用参数ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","-Xmx500m","-Xms500m","/schoolinfo.jar"]

4.开始构建镜像

docker build -t test/schoolinfo .

5.查看docker镜像

docker images

6.使用docker镜像运行容器

docker run -d -p 8081:8081 --name schoolinfo test/schoolinfo

相关操作合集

[root@VM-0-3-centos ~]# cd /root/jarfile[root@VM-0-3-centos jarfile]# docker build -t test/schoolinfo .Sending build context to Docker daemon   72.3MBStep 1/5 : FROM java:8 ---> d23bdf5b1b1bStep 2/5 : VOLUME /temp ---> Running in 32012e9ed635Removing intermediate container 32012e9ed635 ---> fe3f4e1fe03aStep 3/5 : ADD schoolinfo.jar schoolinfo.jar ---> 648fbcf5c901Step 4/5 : RUN bash -c 'touch /schoolinfo.jar' ---> Running in 7d0e8f2c9b06Removing intermediate container 7d0e8f2c9b06 ---> 3c35f77022d8Step 5/5 : ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","-Xmx500m","-Xms500m","/schoolinfo.jar"] ---> Running in 8b4436b7bbe5Removing intermediate container 8b4436b7bbe5 ---> 203ba233c236Successfully built 203ba233c236Successfully tagged test/schoolinfo:latest[root@VM-0-3-centos jarfile]# docker run -d -p 8081:8081 --name schoolinfo test/schoolinfofcfa1e65a71cc1603137d512f698cffab6df7c514cb884085af8912ae24024d3[root@VM-0-3-centos jarfile]#

采用java -jar运行项目部署

1.将需要部署的jar包项目上传到centos服务器上

2.jar包上传到home下 这里我上传schoolinfo.jar到home下

3.kdvolder/jdk8 是我jdk8 的镜像

没有的自行安装

docker pull kdvolder/jdk8

4.使用docker进行运行

[root@VM-0-3-centos ~]# docker run -d --restart=always  -p 8081:8081 -v /home/schoolinfo.jar:/usr/schoolinfo.jar  --name schoolinfo kdvolder/jdk8  java -jar /usr/schoolinfo.jar8142c6b16b3986d0887a70e0bab6cdafb4acec01ce9daf5e95a24e6a7cd741c4

注意事项:

项目成功启动后无法访问可能以下两种原因

1.jar包项目中的mysql或者redis或者rabbitmq使用了localhost则无法进行访问,建议使用公网ip

2.服务器可能防火墙已经开启,或者该端口未放通

转载地址:http://nftzi.baihongyu.com/

你可能感兴趣的文章
Android 下 JNI 开发
查看>>
Android 下 JNI 开发
查看>>
Android 下 JNI 开发
查看>>
Mysql索引
查看>>
OGNL投影查询
查看>>
OGNL投影查询
查看>>
OGNL投影查询
查看>>
Redis之RDB和AOF持久化
查看>>
Redis之RDB和AOF持久化
查看>>
Servlet3.0
查看>>
Servlet3.0
查看>>
Servlet3.0
查看>>
SQL 语句的解析过程
查看>>
SQL 语句的解析过程
查看>>
SQL 语句的解析过程
查看>>
Java类文件结构
查看>>
Java类文件结构
查看>>
使用注解生成代码
查看>>
使用注解生成代码
查看>>
使用注解生成代码
查看>>