Linux云服务部署Spring boot项目
Linux云服务部署Spring boot项目
背景:
之前经过两个周的时间,做了一个简单的博客网站,网址:点击进入,在本地可以正常使用以后,想着部署到服务器上,给大家伙看个乐呵,于是有了这篇部署文章。
简单介绍一下博客内容:
- 仿照小而美搭建的,前端模板也采用小而美实现。
- 技术点:springBoot+thymeleaf+mysql+Mybatis-plus(混合xml实现的)
该博客不会维护,作用是梳理前面的学习过的知识,增加记忆点。
话不多说,开始吧!
环境搭建:
为了不让项目产生版本兼容问题,统一使用的项目的版本安装。
| 包名 | 版本号 |
|---|---|
| maven | 3.6.3 |
| jdk | 9 |
| mysql | 最新版本(有坑) |
所需要的工具:
- Xshell(Linux连接)
- Xftp(文件传输)
- navicat(数据库连接)
- Linux(云服务器) 新用户9块一个月。
这里就没有用云mysql.
部署过程:
项目打包:
- clear
- package
打包成功的样例:
上传到云服务器:
可以界面化上传的软件很多,自行选择。(个人:Xftp软件)
看图说话,如果之前有朋友部署过,应该很清楚,接下来解释下:
我分了两个包:
- javapro 放置jdk和系统的文件
- mvn 放置maven安装包
可以随时修改配置文件,使得项目生效。
解压命令:
tar -zxvf 包名
配置jdk以及maven环境:
进入jdk文件夹:
cd jdk-9.0.4/
root@iZuf67gh3nsadi0q4sg7ulZ:~/javapro/jdk-9.0.4# pwd
/root/javapro/jdk-9.0.4
同操作:
cd apache-maven-3.6.3/
root@iZuf67gh3nsadi0q4sg7ulZ:~/mvn/apache-maven-3.6.3# pwd
/root/mvn/apache-maven-3.6.3
记住当前路径,输入:
vi /etc/profile
如下:
export JAVA_HOME=/root/javapro/jdk-9.0.4 ## 后面是目录的路径和软件链接 ,根据实际情况来写
export PATH=.:$JAVA_HOME/bin:$PATH
#mvn
export PATH=$PATH:/root/mvn/apache-maven-3.6.3/bin
仿照上面格式,填入自己的路径。
退出后,加载一下:
source /etc/profile
最后验证:
java -version
mvn -version
如下:
mvn -version
Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: /root/mvn/apache-maven-3.6.3
Java version: 9.0.4, vendor: Oracle Corporation, runtime: /root/javapro/jdk-9.0.4
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "5.4.0-47-generic", arch: "amd64", family: "unix"
--------------------------------------------------------------------------------
java -version
java version "9.0.4"
Java(TM) SE Runtime Environment (build 9.0.4+11)
Java HotSpot(TM) 64-Bit Server VM (build 9.0.4+11, mixed mode)
root@iZuf67gh3nsadi0q4sg7ulZ:~/mvn/apache-maven-3.6.3#
安装MySQL实现远程访问:
之前MySQL的安装其实也写过,但是没想到折磨也在这里折磨的。
首先在线安装mysql,自己使用官网的安装包,下载到linux中解压报错,原来以为是包下错了,但是在网上找到的教程,还是没有解决,所以实现在线安装的。
如果有知道我这种错误的朋友,可以评论交流下。
这是我之前的写的在线安装的文章:链接
这里针对文章中的做一个补充和修改,该文章在MySQL安装上没什么问题,只是在权限认证上需要补充一下:
- 之前一直用mysql5版本进行远程授权登录,但是换mysql8.0原来的授权方式报错
- 版本5可以使用原来的文章进行配置,但是MySQL8不行,不能授权给自己了。
MySQL8权限验证解决方式:新增一个用户,远程连接到该用户上。
<br>mysql> create user 'xbhog'@'%' identified by 'xbhog';
Query OK, 0 rows affected (0.02 sec)
mysql>
mysql>
mysql> GRANT ALL PRIVILEGES ON *.* TO 'xbhog'@'%';
Query OK, 0 rows affected (0.04 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
mysql> ALTER USER 'xbhog'@'%' IDENTIFIED WITH mysql_native_password BY '对应自己的密码';
Query OK, 0 rows affected (0.02 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
使用Navicat连接需要更改下加密方式:
如果用Navicat连接的回报不支持caching_sha2_password验证方式的错误。
将远程访问用户的验证方式改为: msyql_native_password
执行:
ALTER USER 'username'@'%' IDENTIFIED WITH mysql_native_password BY 'password';
FLUSH PRIVILEGES;
启动项目:
java -jar jar包名(Blog-0.0.1-SNAPSHOT.jar)
后台运行:
nohup java -jar jar包名(Blog-0.0.1-SNAPSHOT.jar)
参考:
结束:
如果你看到这里或者正好对你有所帮助,希望能点个或者感谢;
有错误的地方,欢迎在评论指出,作者看到会进行修改。
Linux云服务部署Spring boot项目的更多相关文章
- Spring框架学习笔记(6)——阿里云服务器部署Spring Boot项目(jar包)
最近接外包,需要部署服务器,便是参考了网上的几篇博文,成功在阿里云服务器成功部署了Spring Boot项目,特记下本篇笔记 Spring Boot项目打包 这里说一下部署的一些问题 1.mysql驱 ...
- IDEA连接远程服务器Docker部署Spring Boot项目
开始前的准备工作 拥有一台云服务器,我的是腾讯云服务器(CentOS7) 腾讯云服务器安装Docker,我的版本是Docker 19.03.9,关于安装和配置镜像加速器可以查阅我的另一篇博文:http ...
- 从零部署Spring boot项目到云服务器(正式部署)
上一篇文章总结了在Linux云服务器上部署Spring Boot项目的准备过程,包括环境的安装配置,项目的打包上传等. 链接在这里:http://www.cnblogs.com/Lovebugs/p/ ...
- 使用Docker部署Spring boot项目
Docker是一个使用广泛的Linux容器管理工具包,它允许用户创建镜像,并将其容器实例化.通过本指南,我们可以学习到如何使用Docker部署Spring Boot项目. 先决条件 开发之前,你必须具 ...
- Docker Gitlab CI 部署 Spring Boot 项目
目前在学习这一块的内容,但是可能每个人环境都不同,导致找不到一篇博客能够完全操作下来没有错误的,所以自己也写一下,记录一下整个搭建的过程. Docker 的安装这里就不赘述了,基本上几行命令都可以了, ...
- 使用 Docker 部署 Spring Boot 项目
Docker 介绍 Docker 属于 Linux 容器的一种封装,提供简单易用的容器使用接口.它是目前最流行的 Linux 容器解决方案. Docker 将应用程序与该程序的依赖,打包在一个文件里面 ...
- 使用Jenkins部署Spring Boot项目
jenkins是devops神器,本篇文章介绍如何安装和使用jenkins部署Spring Boot项目 jenkins搭建 部署分为三个步骤: 第一步,jenkins安装 第二步,插件安装和配置 第 ...
- Windows Docker 部署 Spring Boot 项目
目录 Docker Configuration Config IDEA Plugin Create Spring Boot Project Containerize It Use Dockerfile ...
- Gitlab CI 集成 Kubernetes 集群部署 Spring Boot 项目
在上一篇博客中,我们成功将 Gitlab CI 部署到了 Docker 中去,成功创建了 Gitlab CI Pipline 来执行 CI/CD 任务.那么这篇文章我们更进一步,将它集成到 K8s 集 ...
随机推荐
- 为了让她学画画——熬夜用canvas实现了一个画板
前言 大家好,我是Fly, canvas真是个强大的东西,每天沉迷这个无法自拔, 可以做游戏,可以对图片处理,后面会给大家分享一篇,canvas实现两张图片找不同的功能, 听着是不是挺有意思的, 有点 ...
- [蓝牙嗅探-Ubertooth One] 千元开源蓝牙抓包 Ubertooth One 安装和使用
目录 前言 1.编译 Ubertooth tools 1.1.准备工作 1.2.编译安装 libbtbb 1.3.编译安装 Ubertooth tools 1.4.Wireshark 插件 1.5.更 ...
- [考试总结]noip模拟7
为啥博客园 \(\LaTeX\) 老挂???! \(\huge{\text{菜}}\) 刚开始写 \(T1\) 的时候,在看到后缀前缀之后,直接想到 \(AC\) 自动机,在画了半个 \(trie\) ...
- (JAVA2)写博客的好帮手:Typora
(二)写博客的好帮手:Typora 推荐文本编辑器 :Typora 文件后缀 : xxx.md 安装步骤 打开浏览器搜索Typora 进入官网后,点击Download(下载) 选择自己的操作系统 选择 ...
- Go是一门什么样的语言?
Go语言基本介绍 首先Go语言诞生于2007年由谷歌公司研发,2009年开源,2012年推出1.0版本,Go是一种语言层面支持并发(Go最大的特色.天生支持并发).内置runtime,支持垃圾回收(G ...
- Intouch/ifix语音报警系统制作(3-利用自定义过程和函数,重构先前版本)
在语音模块嵌入了半年左右的时间,经过实际使用发现,代码冗余,重复太多,维护较难,新增也不易,故而对整个框架进行整理,实现简单添加,维护容易的目的. 1.代码优化 1.1构建自定义过程 name 参数代 ...
- jquery设置下拉框selected不起作用
在js中设置下拉框被选中: 最初写法: //移出selected $("#selected option").removeAttr("selected"); / ...
- python算法练习(1)抓交通肇事犯
抓交通肇事犯 1.问题描述 一辆卡车违反交通规则,撞人后逃跑.现场有三人目击该事件,但都没有记住车号,只记下了车号的一些特征.甲说:牌照的前两位数字是相同的:乙说:牌照的后两位数字是相同的,但与前两位 ...
- anyRTC 6月SDK更新迭代
anyRTC 6月更新迭代,macOS新增屏幕 ID 进行屏幕共享功能,让共享更高效简单:此外解决了视频的宽高不是16:9导致共享内容缺失的问题,同时对音视频模块,推流组件等多项功能进行了优化改进. ...
- 《Android原生整合虹软SDK开发uniapp插件》
1.项目背景 应公司要求,需要开发一套类似人脸打卡功能的app,但是因为我们公司没有很强的原生android开发者,所以根据现状选择了第三方跨平台的uniapp,想必目前大多人都了解这个平台了,我也就 ...