• SpringBoot快速部署(2)—不使用docker的常规方法


    一、软件下载和部署前准备

    安装软件
    获取软件安装包 然后上传到服务器的 /tmp 目录下。
    软件:nginx、jdk、mysql 

    下载 X-shell 和 Xftp 注意:这个页面下载安装的才可以免费使用。
    家庭/学校免费 - NetSarang Website

     安装jdk 1.8

    1. tar -zxvf /tmp/jdk-8u371-linux-x64.tar.gz -C /usr/local/
    2. mv /usr/local/jdk1.8.0_371 /usr/local/java
    3. vi /etc/profile
    4. # 下面这两行代码放在profile文件的最下面
    5. export JAVA_HOME=/usr/local/java
    6. export PATH=$JAVA_HOME/bin:$PATH
    7. source /etc/profile
    8. # 验证
    9. java -version

    安装 nginx

    1. #安装gcc
    2. yum install gcc-c++
    3. #安装PCRE pcre-devel
    4. yum install -y pcre pcre-devel
    5. #安装zlib
    6. yum install -y zlib zlib-devel
    7. #安装Open SSL
    8. yum install -y openssl openssl-devel
    9. #解压、编译 nginx 并安装
    10. mkdir /usr/local/nginx
    11. tar -zxvf /tmp/nginx-1.24.0.tar.gz -C /usr/local/nginx
    12. cd /usr/local/nginx/nginx-1.24.0
    13. # 编译安装
    14. ./configure --with-http_stub_status_module --with-http_ssl_module
    15. # 最后执行这个
    16. make && make install

    nginx 命令

    1. cd /usr/local/nginx/sbin
    2. # 进入到这个目录后,可以通过如下的命令来启动,查看,停止,重启 nginx
    3. ./nginx # 启动
    4. ps -ef | grep nginx # 查看
    5. ./nginx -s stop # 停止
    6. ./nginx -s reload # 重启

     ps -ef | grep nginx 查看

            此时打开浏览器则可以看到NGINX启动的界面 (默认是 80 端口,如果打开不成功,可以查看服务器的安全组中该端口是否已经打开)

    nginx 配置

    在 /usr/local/nginx/conf  路径中找到该文件

    1. server {
    2. listen 80;
    3. server_name localhost;
    4. #charset koi8-r;
    5. #access_log logs/host.access.log main;
    6. location / {
    7. root /home/server/honey2024/vue/dist;
    8. index index.html index.htm;
    9. try_files $uri $uri/ /index.html;
    10. }
    11. }

    配置完之后记得重启 nginx
    执行命令重启: 先   cd /usr/local/nginx/sbin  
                             然后         ./nginx -s reload  

    安装MySQL

    linux 系统会自动携带一个数据库,我们需要把它给卸载掉
    通过以下代码可以查看 mariadb 并卸载

    1. rpm -qa | grep mariadb
    2. yum remove -y mariadb-connector-c-3.1.11-2.oc8.1.x86_64
    3. yum remove -y mariadb-connector-c-config-3.1.11-2.oc8.1.noarch

    不过这种是没有找到匹配的,继续往下就行。

    下载 mysql 并 上传到 /tmp 目录
    安装 mysql 命令:

    1. mkdir /data/mysql
    2. tar -zxvf /tmp/mysql-5.7.42-el7-x86_64.tar.gz -C /usr/local
    3. mv /usr/local/mysql-5.7.42-el7-x86_64 /usr/local/mysql
    4. # 添加用户组
    5. groupadd mysql
    6. useradd -r -g mysql mysql
    7. chown -R mysql.mysql /usr/local/mysql
    8. chown -R mysql.mysql /data/mysql
    9. cd /usr/local/mysql
    10. /usr/local/mysql/bin/mysqld --user=mysql --basedir=/usr/local/mysql/ --datadir=/data/mysql --initialize
    11. # 将mysql加入到服务中
    12. cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
    13. # mysql快捷方式
    14. ln -s /usr/local/mysql/bin/mysql /usr/bin
    15. ln -s /usr/lib64/libtinfo.so.6.1 /usr/lib64/libtinfo.so.5
    16. ln -s /usr/lib64/libncurses.so.6.1 /usr/lib64/libncurses.so.5

    记住临时密码 后面要用

    配置 mysql 配置文件 my.cnf
    vi  /etc/my.cnf

    1. [mysqld]
    2. datadir=/data/mysql
    3. basedir=/usr/local/mysql
    4. socket=/tmp/mysql.sock
    5. user=mysql
    6. port=3306
    7. character-set-server=utf8
    8. # 取消密码验证
    9. # skip-grant-tables
    10. # # Disabling symbolic-links is recommended to prevent assorted security risks
    11. symbolic-links=0
    12. [mysqld_safe]
    13. log-error=/var/log/mysqld.log
    14. pid-file=/var/run/mysqld/mysqld.pid

    启动 mysql: **service mysql start **
    开机启动: **chkconfig mysql on **
    登录 mysql: **mysql -uroot -p **
    输入临时密码进入 mysql

    修改密码并设置权限:

    1. SET PASSWORD = PASSWORD('123456');
    2. use mysql;
    3. update user set host ='%'where user ='root' and host ='localhost';
    4. flush privileges;
    5. exit;

    部署前准备—前端需要修改的

    .env.production

    VUE_APP_BASEURL='http://XXXXXXXX:9090'

    main.js 设置全局变量$baseUrl

    Vue.prototype.$baseUrl=process.env.VUE_APP_BASEURL

    request.js

    1. const request = axios.create({
    2. baseURL: process.env.VUE_APP_BASEURL, // 后端的接口地址
    3. timeout: 30000
    4. })

    文件上传地址修改、导出地址修改,vue 工程全局搜索 localhost:9090 替换成 $baseUrl

    :action="𝑏𝑎𝑠𝑒𝑈𝑟𝑙+′/𝑓𝑖𝑙𝑒/𝑢𝑝𝑙𝑜𝑎𝑑′"∗∗∗∗:𝑎𝑐𝑡𝑖𝑜𝑛="baseUrl+′/file/upload′"∗∗∗∗:action="baseUrl + '/user/import'"

    :action="$baseUrl + '/file/upload'"

    前端修改好之后将dist包放在对应的目录下,然后启动NGINX即可

    二、部署 Java

    创建文件夹:mkdir -p /home/server/honey2024
    上传 jar 包到服务器 /home/server/honey2024/java 目录
    设置 application.yml 覆盖

    添加 启动和停止脚本
    cd /home/server/honey2024/java
    vi start.sh

    1. NAME=springboot-0.0.1-SNAPSHOT.jar
    2. nohup java -jar $NAME > server.log 2>&1 &
    3. echo 'start success'
    1. PORT=9090
    2. pid=`netstat -tnlp | grep $PORT | grep -v grep | awk '{print $7}' | awk -F/ '{print $1}'`
    3. if [ ${pid} ]; then
    4. kill -9 $pid
    5. echo "kill $PORT"
    6. else
    7. echo 'stop sucess!'
    8. fi

    去除脚本文件里的特殊符号(可选)

    sed -i 's/\r//' start.sh
    sed -i 's/\r//' stop.sh

     

    启动后台程序

    修改 application.yml 里面的 ip 为服务器的公网 IP
    启动程序:

    1. cd /home/server/honey2024/java
    2. ./start.sh

    实时查看日志:tail -100f server.log 

    输入网址后可以查看:(记得在安全组中将后端端口加上打开,否则访问不了)

  • 相关阅读:
    进程之理解进程的概念
    Java基础---第十一篇
    设计模式之工厂模式
    【数据结构】——单链表
    springcloud笔记(7)-限流降级Sentinel
    使用pyttsx3实现简单tts服务
    Zabbix 使用同一ODBC监控不同版本MySQL
    竞赛选题 深度学习 opencv python 公式识别(图像识别 机器视觉)
    表格识别技术综述
    屏蔽广告效果好的手机浏览器,这3款你一定不要错过
  • 原文地址:https://blog.csdn.net/weixin_49171365/article/details/139417714