SpringBoot项目Docker部署三种方式
一种:直接拷贝jar到服务器部署
1.增加docker配置文件
新建Dockerfile文件,负责Docker的配置
FROM openjdk:21
#ENV timezone
RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \&& echo 'Asia/Shanghai' >/etc/timezone
# WORKDIR
WORKDIR /app
#Copy command, copy files or directories from the context directory to the specified path in the container
COPY spring-monitoring.jar /app/spring-monitoring.jar
#EXPOSE 18081
ENTRYPOINT ["java", "-jar", "-Xmx512m", \
"-XX:-OmitStackTraceInFastThrow", \
"spring-monitoring.jar", "--logging.file.path=/app"]
#"-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005",\
2.上传jar包到远程目录:
创建目录命令:mkdir -p /apps/spring
把自己的jar包和dockerfile文件上传到创建的目录

3.build新的镜像
docker build -t dtb/spring-monitoring:1.0 . docker images #查看刚构建的镜像

4.启动容器:
docker run -d --name monitoring --restart always --net host dtb/spring-monitoring:1.0

二种:SpringBoot 通过maven插件实现docker镜像打包
此方法需要开启远程访问2375 端口不太安全,如果需要安全的话还需要Docker启用TLS加密
这里暂不做介绍
三种:idea 链接docker直接构建镜像启动容器
在项目根目录下增加docker配置文件
FROM openjdk:21
#ENV timezone
RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \&& echo 'Asia/Shanghai' >/etc/timezone
# WORKDIR
WORKDIR /app
#Copy command, copy files or directories from the context directory to the specified path in the container
COPY target/spring-monitoring.jar /app/spring-monitoring.jar
#EXPOSE 18081
ENTRYPOINT ["java", "-jar", "-Xmx512m", \
"-XX:-OmitStackTraceInFastThrow", \
"spring-monitoring.jar", "--logging.file.path=/app"]
下载插件

运行配置

点击服务器 三个点

点击加号,选ssh,ssh后面的三个加号配置链接服务器

这里的身份验证类型是密码


Only key-pair ssh auth type is supported for docker connections
刚才使用ssh账号密码的方式,docker链接需要用ssh key

点测试连接 输入登录用户的密码


点确定

可以添加不同的运行选项,包括绑定端口、绑定挂载、运行选项等

添加执行前编译

选择工作目录(当前自己项目的目录)及填写命令行,命令:clean package -U -DskipTests



执行


成功

到此这篇关于SpringBoot项目Docker部署三种方式的文章就介绍到这了,更多相关SpringBoot Docker部署内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
深入理解happens-before和as-if-serial语义
本文大部分整理自《Java并发编程的艺术》,温故而知新,加深对基础的理解程度。下面可以和小编来一起学习下2019-05-05
详解Java中方法next()和nextLine()的区别与易错点
这篇文章主要介绍了详解Java中方法next()和nextLine()的区别与易错点,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-11-11
解决因jdk版本引起的TypeNotPresentExceptionProxy异常
这篇文章介绍了解决因jdk版本引起的TypeNotPresentExceptionProxy异常的方法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2021-12-12
MyBatis异常java.sql.SQLSyntaxErrorException的问题解决
使用mybatis插入数据时出现java.sql.SQLSyntaxErrorException异常,本文就来介绍一下MyBatis异常的问题解决,具有一定的参考价值,感兴趣的可以了解一下2023-08-08
mybatis 连接mysql数据库 tinyint 为boolean类型详解
这篇文章主要介绍了mybatis 连接mysql数据库 tinyint 为boolean类型详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2020-11-11
spring如何实现依赖注入DI(spring-test方式)
本文主要介绍如何实现spring 的依赖注入,并且浅显的讲述一下注入需要注意的事项。如有错误或未考虑完全的地方,望不吝赐教2022-03-03


最新评论