一、前言
最近写了个项目,前端还没写,需要部署到服务器给女朋友实现前端,可是不熟悉Linux的我,蹑手蹑脚,真的是每一步都是bug,可谓是步步维艰,对世界很绝望,曾经怀疑自己的服务器有问题,甚至一度怀疑是自己的DaoBan IDE有问题,历时两天一夜,终于……部署好了。
二、现在开始分享一下安装历程:
1.购买一个服务器或者安装虚拟机(有点像废话)
2.安装docker(可以使用yum安装)
tips:安装好docker之后需要配置一下,输入下面这行代码,进入docker配置文件,在ExecStart=后添加配置,远程访问docker的端口为2375
sos:如果是服务器,这个修改后需要在服务器上面再配置一下这个端口号,不然ide会识别不出端口号,很重要(这个坑踩了很久,快陷进去了)
vim /lib/systemd/system/docker.service #输入,进到这个配置文件
-H tcp://0.0.0.0:2375 #复制粘贴这个
退出编辑界面:先按esc,然后":wq"退出
# 重启docker
systemctl daemon-reload
systemctl 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
到此这篇关于如何在IDE部署springboot项目(有swagger和无swagger都是一样的)到服务器或者虚拟机上的docker的文章就介绍到这了,更多相关ide部署springboot项目内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!