一、将项目打包成jar包,或者war包。
首先,确保已经使用 Maven 或 Gradle 等工具将项目打包成 JAR 文件。如果使用的是 Maven,可以通过以下命令打包:
#gradle 构建的项目
gradle build
#mvn 构建项目、
mvn clean packege
二、上传jar包服务器项目目录上,构建Dockerfile文件
如我们的项目目录为 application/xxxxx项目名/
Dockerfile 文件配置如下
#使用的jdk版本,确保服务器有安装相关的jdk环境
FROM openjdk:8
#使用的创建用户
USER rootENV TZ "Asia/Shanghai"
ENV LANG C.UTF-8
#配置Java应用的虚拟机的参数
ENV JAVA_OPTS "-Xms1024m -Xmx2048m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=4096m"#日志目录
RUN mkdir -p /application/testProject/log
#工作目录
WORKDIR /application/testProject/
COPY test-1.0.0.RELEASE.jar .#需要运行并暴露的端口号
EXPOSE 8080
#镜像地址映射
CMD ["java","-jar","/application/testProject/test-1.0.0.RELEASE.jar","-Dfile.encoding=utf-8"]
三、打包jar包编译为tar包docker 镜像
#将jar包打成镜像
docker build -t testProject:1208(版本号) .#将镜像报存为tar包
docker save -o testProject.tar testProject:1208(版本号)#将tar包加载
docker load -i smartpatrol.tar #查看是否有相关镜像与容器应用
docker ps -a docker images#启动镜像
docker run -id --name testProject --net=host -e spring.profiles.active=prod(你的项目spring相关的启动配置文件) -v /data/application/back/testProject/:/application/testProject/ testProject:1208
四、如果项目中需要用到Windows字体。
导入windows环境(C:\Windows\Fonts)的字体文件到宿主机下的/usr/share/fonts目录,将字体cp复制到容器中去。
docker cp /usr/share/fonts/ b8df5423c851:/usr/share(容器id:/路径)
进入容器重新刷新字体文件
docker exec -it b8df5423c851 /bin/bash
#刷新字体缓存
fc-cache
#查看容器字体
fc-list
#重启容器
Docker restart b8df5423c851