如何在IDE部署springboot项目(有swagger和无swagger都是一样的)到服务器或者虚拟机上的docker
作者:狮子也疯狂 发布时间:2023-09-01 00:33:25
一、前言
最近写了个项目,前端还没写,需要部署到服务器给女朋友实现前端,可是不熟悉Linux的我,蹑手蹑脚,真的是每一步都是bug,可谓是步步维艰,对世界很绝望,曾经怀疑自己的服务器有问题,甚至一度怀疑是自己的DaoBan IDE有问题,历时两天一夜,终于……部署好了。
二、现在开始分享一下安装历程:
1.购买一个服务器或者安装虚拟机(有点像废话)
2.安装docker(可以使用yum安装)
tips:安装好docker之后需要配置一下,输入下面这行代码,进入docker配置文件,在ExecStart=后添加配置,远程访问docker的端口为2375sos:如果是服务器,这个修改后需要在服务器上面再配置一下这个端口号,不然ide会识别不出端口号,很重要(这个坑踩了很久,快陷进去了)
vim /lib/systemd/system/docker.service #输入,进到这个配置文件-H tcp://0.0.0.0:2375 #复制粘贴这个退出编辑界面:先按esc,然后":wq"退出# 重启dockersystemctl daemon-reloadsystemctl restart docker
3.到了第三步,说明咱们已经配置好docker了,现在需要在docker里面拉取MySQL映像
docker pull mysql:8.0(本人用8.0,需要什么版本号在后面改就好)docker run -itd --name mysql -p 3306:3306-e MYSQL_ROOT_PASSWORD=root mysql:8.0
tips: 这一步也有个坑,如果你在安装docker之前,本地就安装了mysql,并且端口号也是3306,那必须让它处于关闭状态,否则会造成端口号冲突,windows的navigate或者小海豚就会连接不上虚拟机的mysql
4.到这一步,虚拟机的工作做完了,回到ide中,首先修改yml文件中mysql的连接地址,ip和端口号都需要改成虚拟机的,注意密码也要改哦。其次呢,需要在pom文件添加docker-maven-plugin插件
<!-- docker-maven-plugin--><plugin><groupId>com.spotify</groupId><artifactId>docker-maven-plugin</artifactId><version>1.2.2</version><configuration><!-- Docker路径 --><dockerHost>http://虚拟机的ip:2375(刚开始设置的docker端口号)</dockerHost><!-- Dockerfile定义 --><baseImage>openjdk:11</baseImage><!-- 作者 --><maintainer>jackie</maintainer><resources><resource><!-- 复制jar包到docker容器指定目录 --><targetPath>/</targetPath><!-- 从哪个包拷贝文件,target包 --> <directory>${project.build.directory}</directory> <!-- 拷贝哪个文件 --><include>${project.build.finalName}.jar</include></resource></resources><workdir>/</workdir><entryPoint> ["java", "-jar", "${project.build.finalName}.jar"] </entryPoint><forceTags>true</forceTags><!-- 镜像名 --><imageName>${project.artifactId}</imageName><!-- 镜像版本 --><imageTags><imageTag>${project.version}</imageTag></imageTags></configuration> </plugin>
5.打包,先后顺序。
6.到这一步已经加载好docker插件了,打开这个插件,点一下build,如果运行最后显示BUID SUCESS,就说明成功传输package到虚拟机了,到虚拟机查看(这里如果不成功,大概率是2375那个端口号在服务器那里没有释放)
7.回到虚拟机,输入命令
docker images
如果看到
就成功了,现在来运行这个项目输入
docker run -d -p 80:80 项目名:0.0.1-SNAPSHOT
-d是后台运行,-p:绑定端口号 ,前面那个80是启动这个镜像对外暴露的端口(自定),第二个80是下载的镜像的端口(原项目端口) 。
接下来,查看自己的项目是否成功,输入命令,就会出现你的项目名字了,然后可以在本地浏览器查看一下项目。
docker ps
来源:https://blog.csdn.net/m0_58847451/article/details/128581369


猜你喜欢
- 简介大家都知道,当我们用C#来开发客户端程序的时候,总会不可避免的需要调用外部程序或者访问网站,本篇博客介绍了三种调用外部应用的方法,供参考
- 前言:仿微信通讯录搜索功能,通过汉字或拼音首字母找到匹配的联系人并显示匹配的位置一:先看效果图字母索引搜索匹配二:功能分析1:汉字转拼音通讯
- 今天老师想让我帮忙把她们200多张寸照换成白底的,这些寸照里面多为蓝色底,红色底。用ps?不!用java!!对,我第一反应就是用java,到
- jwt简介冒泡排序:(Bubble Sort)是一种简单的交换排序。之所以叫做冒泡排序,因为我们可以把每个元素当成一个小气泡,根据气泡大小,
- 本文实例为大家分享了C语言实现代码雨效果的具体代码,供大家参考,具体内容如下一、项目描述和最终的效果展示项目: 让字符从上到下
- 循环结构分两大类,一类是当型,一类是直到型。当型:当布尔值表达式条件为True时,反复执行某语句,当布尔表达式的值为False时才停止循环,
- 这一篇文章介绍SpringBoot应用修改默认打jar形式部署为打war包形式,部署到外部Tomcat。SpringBoot应用默认打包成为
- 本文实例讲述了Java针对ArrayList自定义排序的2种实现方法。分享给大家供大家参考,具体如下:Java中实现对list的自定义排序主
- 前言Mybatis作为一个应用广泛的优秀的ORM框架,已经成了JavaWeb世界近乎标配的部分,这个框架具有强大的灵活性,在四大组件(Exe
- ArrayList集合在查询元素时速度很快,但在增删元素时效率较低,为了克服这种局限性,可以使用List接口的另一个实现类LinkedLis
- 本文实例讲述了Android编程滑动效果之Gallery仿图像集浏览实现方法。分享给大家供大家参考,具体如下:Android系统自带一个Ga
- 主要介绍springboot项目中配置文件的加密前言为了保证服务器相关信息的保密,一般会采用加密的方式进行对配置文件原文的加密,今天介绍下s
- 本文实例讲述了C#实现闪动托盘图标效果的方法。分享给大家供大家参考,具体如下:在用户正在登录QQ或者使用Firemail邮件系统自动收取邮件
- 前言该篇文章主要总结的是自己平时工作中使用频率比较高的Xml文档操作的一些常用方法和收集网上写的比较好的一些通用Xml文档操作的方法(主要包
- 对其做了些优化,但此种sql生成方式仅适用于复杂程度不高的sql,所以实用性不是很高,仅仅是写着玩的,知道点mybatis的注解形式的使用方
- 昨天晚上写代码的时候偶然发现 DateTime 里出现了星期几,当时一阵凌乱,去网上百度没有详细解决办法,很多人说可以用用 ToString
- 批注是一种富文本注释,常用于为指定的Excel单元格添加提示或附加信息。 Free Spire.XLS for Java为开发人员免费提供了
- 今天上课老师用Java实现了打地鼠游戏的界面和具体逻辑,那么我也尝试使用Android语言实现其功能。首先是打地鼠游戏的玩法1.每隔1秒或者
- 短信是手机常见的功能,本文就以实例形式讲述了Android实现将已发送的短信写入短信数据库的方法。分享给大家供大家参考之用。具体如下:一般来
- Android 资源 id详解我们平时获取资源是通过 findViewById 方法进行的,比如我们常在onCreate方法中使用这样的语句