(新手向)从零开始将springboot项目部署到云服务器(ecs)上

3 篇文章 0 订阅
2 篇文章 1 订阅

      最近用springboot写了一个个人博客项目,正好之前趁着活动免费领取了一个阿里云的云服务器ecs,于是准备把项目部署到服务器上。对于我这种纯新手来说,部署过程可谓是踩坑无数,好在最后还是成功了。
      这里跟大家分享一下完整的步骤,尽量帮助大家排坑。

      2020.4.3更新:
      最近买了一个域名,通过解析和备案,可以通过域名直接访问项目了嘻嘻
欢迎大家来我的博客玩————君の名は
项目源码地址:https://github.com/Mitsuha666/blog

1. 购买和配置云服务器

阿里云腾讯云等等的都可以,我选择的系统是centos7,关于服务器详细的博客网上有很多了,我这里就不赘述了。

2. 本机下载XShell 6 与XFtp 6

XShell 6:用于远程连接你的服务器
XFtp 6:用于把本地文件上传至云服务器
官网下载地址:Xmanager中文官网

下载安装后,打开xftp6,新建一个会话(连接):
在这里插入图片描述
设置会话属性:
在这里插入图片描述
连接完成,可以看到服务器的文件目录:
在这里插入图片描述
xshell6的连接方式和xftp6基本相同,这里就不放图了

3. 云服务器安装宝塔面板

由于我是新手,对linux命令什么的都还不了解,就先用宝塔救急,大家日后还是要学习linux的呀,毕竟咱作为程序员,linux肯定是要会的。

打开xshell6,连接到服务器:
在这里插入图片描述
输入命令:选择自己的操作系统版本的命令,回车执行

Centos安装命令:

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh

Ubuntu/Deepin安装命令:

wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh

安装完成后,可以看到一个url地址,通过它可以访问你的宝塔面板界面
记住这里的用户名和密码,用来登录宝塔。
注意:如果访问不了宝塔,去服务器控制台安全组看看有没有开放宝塔默认的端口号8888
在这里插入图片描述
输入上面的用户名和密码
在这里插入图片描述

登录成功后进入宝塔界面,第一次进入会提示安装环境,安装推荐的LNMP,选择编译安装(需要几个小时时间安装)。

在这里插入图片描述
至此,宝塔配置完毕。

4. 云服务器安装jdk

先在本地把linux版本的jdk压缩包下载好

由于官网下载要注册oracle的账号
贴一个好心博主的下载地址:https://blog.csdn.net/qq_21187515/article/details/84850814
下载jdk的oracle官网:
http://www.oracle.com/

再通过xftp6把压缩包传输到服务器上
这里我把压缩包放在了/usr/java/jdk文件夹中:
在这里插入图片描述
用xshell6执行解压操作:
注意:要在压缩包当前文件夹下执行命令

cd /usr/java/jdk
tar -zxvf jdk-8u11-linux-x64.tar.gz

解压完毕后,需要配置环境变量,
这里我们用xftp修改etc目录下的bashrc文件,在最前面添加:

export JAVA_HOME=/usr/java/jdk/jdk1.8.0_11 
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar 

然后保存文件退出
打开xshell运行指令:

source /etc/bashrc

然后永久环境变量就可以生效啦

执行java -version查看是否配置成功
在这里插入图片描述

5.Navicat连接云服务器的mysql

1)本地导出数据库.sql文件,把自己项目的数据库文件导出
在这里插入图片描述
2)连接云数据库,SSH和常规的信息都要写
在这里插入图片描述
在这里插入图片描述
3)在云服务器的mysql中,新建同名数据库,执行.sql文件即可

6. 打包SpringBoot项目为jar包,上传到云服务器上并运行

这里有一个坑:springboot配置文件中数据库密码是云服务器上数据库的密码,错了会导致项目无法连接到数据库。
在这里插入图片描述
云服务器数据库的密码可以在宝塔里面找到:
在这里插入图片描述

在idea中打开项目,右侧maven,先执行clean,再package。
在这里插入图片描述
执行成功后会生成一个.jar文件,把它放到云服务器中:
在这里插入图片描述
在当前目录下,执行命令:

java -jar xxx.jar

大功告成!!!
在这里插入图片描述
通过IP:端口号,即可访问项目
在这里插入图片描述

7.通过域名访问项目

1.首先你需要购买一个域名

2.域名购买后需要实名认证

3.解析域名

阿里云的控制台里有域名解析的新手引导,可以很方便的完成域名解析
在这里插入图片描述
4.域名备案

解析完成后,如果想通过域名访问服务器ip,需要进行备案,备案的周期一般在7-20天左右,我是审核了11天通过的。

5.访问网站

备案成功后,就可以通过域名:端口号的方式访问项目了
跟之前IP:端口号的形式类似
如果觉得加上端口号太麻烦,可以把项目的端口号改成80
当访问域名的时候,端口默认指定的是80;

如果80端口没有其他程序占用的情况下,就可以直接通过域名访问项目了

但是往往事与愿违,我的80端口就被占用了
输入命令,

lsof -i:80

可以看到正在占用我的80端口的进程,nginx和AliYunDun
在这里插入图片描述
示例解决方法:

1.将nginx的默认端口从80改成别的

2.干掉AliYunDun,输入下面的命令

sudo fuser -k 80/tcp

当80端口没有被占用的时候,即可通过域名直接访问项目了!

8.项目在服务器上永久运行方法

在xshell中通过命令启动项目后,如果关闭xshell和服务器的远程连接,项目就会停止运行,怎么才能让项目在服务器的后台一直运行呢?
方法如下:

(1)在xshell输入命令:

nohup 你的shell命令 &

例:我的命令

nohup java -jar blog.jar &

(2)回车,使终端回到shell命令行;

(3)输入exit命令退出终端:exit

(4)现在可以关闭你的终端软件了,等过足够的时间,让你的shell命令执行完了再上去看结果吧。

其中,nohup命令可以让你的shell命令忽略SIGHUP信号,即可以使之脱离终端运行;“&”可以让你的命令在后台运行。

以脱离终端的方式在后台运行shell命令有这样几个好处:只要你执行过了命令,那么你的网络中断不会对你有任何影响,并且你就可以关闭终端软件了。

如果需要终止后台允许的项目,使用kill命令终止:

kill -9  PID

9.shell命令报错

出现类似报错

-bash: nohup: command not found

解决方法:

在/etc/profile文件中加上:

export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

然后执行:保存对配置文件的修改!

source /etc/profile
  • 18
    点赞
  • 93
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
对于使用宝塔面板来部署SpringBoot项目,可以按照以下步骤进行操作: 1. 首先,将SpringBoot项目打包成war包。可以使用Maven或Gradle等构建工具进行打包,生成war包的命令为:`mvn clean package` 或 `./gradlew clean build`。 2. 登录到宝塔面板,点击左侧的软件商店,选择Java项目一键部署。点击设置,然后选择容器管理安装Tomcat。 3. 安装完成后,点击SpringBoot选项,然后点击添加项目。选择你的war包文件,并输入你的项目端口。如果端口已经被占用,你可以通过命令行或宝塔面板中的进程管理工具杀掉占用该端口的进程。 4. 输入你的域名,并点击确定。如果一切设置正确,你的SpringBoot项目应该可以成功部署在宝塔面板上了。 需要注意的是,如果你遇到了启动失败的情况,你可以尝试在 `--server.port` 前面加上一个空格,然后重新启动项目。 以上就是使用宝塔面板部署SpringBoot项目的一般步骤。希望对你有所帮助!<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [利用宝塔面板部署springboot项目](https://blog.csdn.net/txyllyyj/article/details/119277420)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [(新手向)从零开始springboot项目部署云服务器ecs)上](https://download.csdn.net/download/weixin_38500222/14054335)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mitsuha三葉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值