1、idea安装插件
2、maven打包
3、在打包目录下新建Dockerfile文件
4、Dockerfile文件新增如下内容
FROM openjdk:17
#发布到网上时只会把jar包和Dockerfile发布上去
COPY *.jar /app.jar
#地址映射
CMD ["--server.port=9834"]
#对外暴露端口
EXPOSE 9834
#执行命令
ENTRYPOINT ["java","-jar","/app.jar"]
如果要在虚机上安装文件夹的话,则如下
FROM java:8
MAINTAINER Micromaple <micromaple@qq.com>
RUN mkdir /app
COPY my-project-server-1.0.0-SNAPSHOT.jar /app/app.jar
ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-jar", "/app/app.jar", "--spring.profiles.active=prod,druid-prod"]
EXPOSE 8899
5、将Dockerfile和jar包文件放在服务器指定路径下
6、执行命令
docker build -t firstdocker . //构建镜像
docker images //查询镜像
docker run -d --name demo -p 9834:9834 firstdocker //启动容器
7、window踩坑
7.1在设置按钮下修改仓库镜像
"registry-mirrors": [
"https://yxzrazem.mirror.aliyuncs.com"
]
7.2 “buildkit”: false设置修改
8、更新jar包
8.1 修改镜像文件
FROM openjdk:17
#发布到网上时只会把jar包和Dockerfile发布上去
COPY *.jar /springboot3Test-0.0.1-SNAPSHOT.jar
#地址映射
CMD ["--server.port=9834"]
#对外暴露端口
EXPOSE 9834
#执行命令
ENTRYPOINT ["java","-jar","/data/springboot3Test-0.0.1-SNAPSHOT.jar"]
8.2 更新运行程序
docker run --name demo -it -v G:/bootdocker:/data -d -p 9834:9834 firstdocker
踩坑:如果docker时间差8小时,可修改docker文件
ENTRYPOINT ["java","-jar","-Duser.timezone=GMT+08","/data/mqttSimulate-0.0.1-SNAPSHOT.jar"]
至此大功告成