Docker下运行JFinal,分享下制作镜像、启动的方法和文件

有兄弟分享Docker下JFianl运行的修改方式,我也分享一种打包运行的一种方法:

1、在项目跟目录下增加docker打包用的Dockerfile:

FROM java:8
MAINTAINER TEST

RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone

WORKDIR res
COPY . .

EXPOSE 80
ENTRYPOINT ["java","-Xverify:none","-cp","./lib/demo-4.0.jar:./config:./lib/*","com.ruyi.Config"]

2、在packages.xml下修改copy目录,增加Dockerfile:

<!-- 项目根下面的脚本文件 copy 到根目录下 -->
<fileSet>
   <directory>${basedir}</directory>
   <outputDirectory></outputDirectory>
   <!-- 脚本文件在 linux 下的权限设为 755,无需 chmod 可直接运行 -->
   <fileMode>755</fileMode>
   <includes>
      <include>*.sh</include>
      <include>*.bat</include>
      <include>Dockerfile</include>
   </includes>
</fileSet>

3、在跟目录下增加build.sh,用于打包生成项目Docker镜像

#!/bin/bash
# --------------------------------------------------------------
# demo为镜像名
# --------------------------------------------------------------
docker build -t demo .

4、在跟目录下增加docker_run.sh,用于运行Docker镜像

#!/bin/bash
# ----------------------------------------------------------------------
#
# 1.执行docker ps 找到正在进行的进程,docker stop 'name'
# 2.执行此sh,启动,按照需要的参数修改下面命令
# 
# 启动docker demo镜像,将80端口代理到8086端口,输出日志到制定文件
# ----------------------------------------------------------------------


nohup docker run -t -p 8086:80 demo > /www/log/demo.log &

5、打包、运行

在项目下执行 mvn clean package打包,得到的打包完成的文件直接上传liunx服务器,解压后对build.sh、docker_run.sh文件增加运行权限,运行build.sh打包后运行docker_run.sh启动项目。

评论区

要输就输给追求

2019-12-27 15:19

https://hub.docker.com/repository/docker/ysjsgzq/alpine-jre8-80 我只打了一个jdk的环境,然后直接把容器的工作目录映射到项目的根目录

JFinal

2019-12-27 18:03

比前几天的 docker 打包 jfinal 分享要详细,收藏一波,谢谢

steven_lhcb_9527

2022-02-09 13:53

ENTRYPOINT -cp 的jar是maven打包生成的那个jar吧。"com.ruyi.Config"这个启动类访问不了。

A8187

2022-02-10 17:54

@steven_lhcb_9527 那个是启动类的,换成你自己的启动类

热门分享

扫码入社