记第一次springboot项目部署到阿里云的过程

    技术2023-10-12  105

    阿里云:centos8

    要部署springboot项目,第一步肯定是安装jdk,这个好办,直接去oracle官网下最新的linux的jdk压缩包就行。链接:jdk我下的是这个:Linux x64 Compressed Archive

    下载好之后,用xftp(没有的先装好)把jdk发到服务器上,我是存在/usr/java里,文件夹是新建的。 然后配置环境变量:

    vim /etc/profile

    在这个文件末尾添加这几行:

    export JAVA_HOME=/usr/java/jdk1.8.0_221 export CLASSPATH=$JAVA_HOME/lib/ export PATH=$PATH:$JAVA_HOME/bin export PATH JAVA_HOME CLASSPATH

    然后是装mysql了,装这玩意踩了个无比巨大的坑,centos装mysql一个指令就行了

    yum install -y mysql mysql-server mysql-devel

    当然我建议先看看有没有装过,可以去网上找找教程。 然后就是恶心的了,装好之后

    systemctl start mysqld

    它一直会报错,然后如果你尝试mysql,他又会报错

    ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

    用来无数个方法,根本不是配置文件my.cnf的问题,后来查看日志, 发现报错都是和文件权限相关的,遂

    sudo chown -R mysql:mysql /var/lib/mysql

    然后居然解决了,心态都快崩了,折磨这么就就是文件权限问题,然后就是改密码导入数据库啦,mysql基础操作教程很多,直接查。


    最后就是springboot项目上线了,先在pom.xml里加一句 在IDEA里面打开终端 装了maven就mvn clean package,没装就mvnw.cmd clean package 然后会生成一个target文件夹,下面就有打包好的jar,注意,这里可能已经生成了target但是IDEA默认不显示的,你在终端输入cd target,进入就说明生成了,你可以右键单击project,然后有个显示排除文件,点上就行了。

    同样的,把jar包传进去,然后开放阿里云8080端口。然后在控制台把jar跑起来,公网ip:8080/接口名,尝试访问接口获得数据,又出问题了这个时候,访问超时无法连接,一般这种时候都是端口没打开的问题,但是我明明打开了,为啥还会这样这样呢,然后请教了一位大佬。 大佬告诉我很可能是服务器本身防火墙的问题,然后在终端输入firewall-cmd --list-all,你会看到ports那一行要么一片空白,要么有别的接口,反正就是没有8080/tcp这一项。然后敲入systemctl stop firewalld,暂时关闭防火墙,果不其然,接口能访问了,这就好办了,把8080端口添加进ports就行了。于是重新打开防火墙systemctl start firewalld,然后加8080端口firewall-cmd --add-port=8080/tcp --permanent,然后重启防火墙firewall-cmd --reload,然后查看一下端口firewall-cmd --list-ports,8080出现了,然后重新运行jar

    得得得得得得得得得得得得得得得

    完事! 前前后后花了两天时间,虽然累,但是确实学会了不少东西,看到输入接口地址得到数据那一刻,感觉啥都值了。

    Processed: 0.030, SQL: 9