最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

服務(wù)器Centos部署Spring?boot?前后端項(xiàng)目的詳細(xì)步驟

 更新時(shí)間:2024年05月20日 11:39:56   作者:WeChat098  
使用centos部署前后端項(xiàng)目,使用的是centos?8,后端用的是Spring,前端用的是Vue,這篇文章主要介紹了服務(wù)器Centos部署Springboot前后端項(xiàng)目的步驟,需要的朋友可以參考下

使用centos部署前后端項(xiàng)目,使用的是centos 8,后端用的是Spring,前端用的是Vue,使用下面的步驟進(jìn)行部署:

- 安裝MySQL

這一步有多種方式進(jìn)行安裝,可以使用包管理器,可以使用安裝包解壓縮進(jìn)行安裝,但是最終都需要使用對(duì)配置文件進(jìn)行配置,我建議大家可是嘗試下面的MySQL腳本就行安裝,只需要在里面改動(dòng)值就可以。

  • vi InstallMySQL.sh
  • 創(chuàng)建bash文件,填入下面的內(nèi)容
#!/bin/bash
# https://blog.csdn.net/qq_41054313
#數(shù)據(jù)庫(kù)密碼
mysqlPWD="lhDream@123"
echo "--MySQL5.7安裝--"
echo "下載依賴環(huán)境"
yum -y install wget
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
echo "開始安裝"
yum -y install mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql-community-server
echo "啟動(dòng)MySQL"
systemctl start  mysqld.service
systemctl status mysqld.service
a=$(systemctl status mysqld.service | grep "active (running)" | wc -l)
if [ $a -gt 0 ] 
then
	echo "啟動(dòng)完成,狀態(tài)正常"
	#配置MySQL
	echo "配置MySQL"
	str=$(grep "password is generated for root@localhost:" /var/log/mysqld.log)
	localPWD=${str##*"root@localhost: "}
	echo "數(shù)據(jù)庫(kù)默認(rèn)密碼:"$localPWD
	export MYSQL_PWD=$localPWD
	echo "重置數(shù)據(jù)庫(kù)密碼為:"$mysqlPWD
	mysql --connect-expired-password -uroot  -e "ALTER USER 'root'@'localhost' IDENTIFIED BY '$mysqlPWD'"
	echo "刷新權(quán)限"
	export MYSQL_PWD=$mysqlPWD
	mysql --connect-expired-password -uroot  -e "flush privileges"
	echo "配置遠(yuǎn)程登錄"
	mysql --connect-expired-password -uroot  -e "grant all privileges on *.* to 'root'@'%' identified by '$mysqlPWD' with grant option"
	echo "配置數(shù)據(jù)庫(kù)編碼"
	echo "[client]" > /etc/my.cnf
	echo "default-character-set=utf8" >> /etc/my.cnf
	echo "" >> /etc/my.cnf
	echo "[mysqld]" >> /etc/my.cnf
	echo "datadir=/var/lib/mysql" >> /etc/my.cnf
	echo "socket=/var/lib/mysql/mysql.sock" >> /etc/my.cnf
	echo "character-set-server=utf8" >> /etc/my.cnf
	echo "collation-server=utf8_general_ci" >> /etc/my.cnf
	cat /etc/my.cnf
	#重啟MySQL查看配置結(jié)果
	systemctl restart mysqld
	systemctl status mysqld.service
	mysql --connect-expired-password -uroot  -e "status"
	echo "安裝完成"
else
	echo "狀態(tài)異常,安裝失敗"
fi
#rm -f mysql57-community-release-el7-10.noarch.rpm
echo "exit"
bash InstallMySQL.sh

運(yùn)行腳本,查看安裝進(jìn)度

安裝Redis

vi InstallRedis.sh
#!/bin/bash
# 安裝版本
redis_version="6.2.7"
# 安裝目錄
#redis_installDir="/opt/module/redis"
redis_installDir="/opt/bigdata/redis"
install_redis() {
  local version=$1
  local installDir=$2
  local redisconf_file=$installDir/redis-$version/redis.conf
  # 安裝工具包
  yum -y install epel-release gcc make tcl
  # 下載地址
  local downloadUrl="http://download.redis.io/releases/redis-$version.tar.gz"
  if [ -z "$(command -v wget)" ]; then
    yum -y install wget
    if [ $? -eq 0 ]; then
      echo "wget安裝完成"
    else
      echo "wget安裝失敗,請(qǐng)檢查"
      exit 1
    fi
  fi
  if [ ! -d "${installDir}" ]; then
    mkdir -p "${installDir}"
    if [ $? -eq 0 ]; then
      echo "安裝目錄${installDir}已創(chuàng)建"
    else
      echo "請(qǐng)確保您有足夠的權(quán)限來(lái)創(chuàng)建目錄,請(qǐng)?jiān)黾訖?quán)限后再次執(zhí)行"
      exit 1
    fi
  fi
  if [ ! -f "/tmp/redis-$version.tar.gz" ] ; then
    wget "$downloadUrl" -P /tmp
    if [ $? -eq 0 ]; then
      echo "redis-$version.tar.gz下載成功"
    else
      echo "redis-$version.tar.gz下載失敗,請(qǐng)重試或手動(dòng)下載到/tmp目錄下再次執(zhí)行"
      echo "下載地址:$downloadUrl"
      exit 1
    fi
  else
    echo "/tmp/redis-$version.tar.gz文件已存在"
  fi
  if [ -d "${installDir}/redis-$version" ]; then
    echo "${installDir}/redis-$version 已存在,正在刪除..."
    rm -rf "${installDir}/redis-$version"
  fi
  tar -zxvf "/tmp/redis-$version.tar.gz" -C "${installDir}"
  if [ $? -eq 0 ]; then
    echo "redis-$version.tar.gz解壓成功"
  else
    echo "redis-$version.tar.gz解壓失敗,請(qǐng)查看異常信息后重試"
    exit 1
  fi
  # 編譯和安裝
  cd ${installDir}/redis-$version
  make && make install
  sed -i "s|daemonize no|daemonize yes|" "$redisconf_file"
  sed -i "s|bind 127.0.0.1 -::1|bind 127.0.0.1 -::1\nbind 0.0.0.0|" "$redisconf_file"
  sed -i "s|# requirepass foobared|# requirepass foobared|" "$redisconf_file"
#  sed -i "s|port 6379|port 6379|" "$redisconf_file"
#  sed -i "s|# cluster-enabled yes|cluster-enabled yes|" "$redisconf_file"
#  sed -i "s|# cluster-config-file nodes-6379.conf|cluster-config-file nodes.conf|" "$redisconf_file"
#  sed -i "s|# cluster-node-timeout 15000|cluster-node-timeout 5000|" "$redisconf_file"
#  sed -i "s|appendonly no|appendonly yes|" "$redisconf_file"
  echo "redis 單機(jī)版下載、安裝、配置完成"
  echo "redis安裝目錄:${installDir}/redis-$version"
  echo "單機(jī)版 進(jìn)入 redis 交互界面命令:redis-cli -h $(ip addr | grep 'inet ' | awk '{print $2}'| tail -n 1 | grep -oP '\d+\.\d+\.\d+\.\d+') -p 6379"
  echo "集群版 進(jìn)入 redis 交互界面命令:redis-cli -h $(ip addr | grep 'inet ' | awk '{print $2}'| tail -n 1 | grep -oP '\d+\.\d+\.\d+\.\d+') -c -p 30001"
#  mkdir -p "${installDir}/redis-$version/cluster-test"
#  for cluster_dir in {7000..7005}
#  do
#    local create_dir="${installDir}/redis-$version/cluster-test/$cluster_dir"
#    mkdir -p "$create_dir"
#    cp "$redisconf_file" "$create_dir"
#    sed -i "s|port 6379|port $cluster_dir|" "$create_dir/redis.conf"
#    redis-server "$create_dir/redis.conf"
#    echo "$cluster_dir 端口的redis啟動(dòng)成功"
#  done
#  local dir=${installDir}/redis-$version/utils/create-cluster
#  sed -i "s|CLUSTER_HOST=127.0.0.1|CLUSTER_HOST=192.168.145.105|" "$dir/create-cluster"
#  sed -i "s|PROTECTED_MODE=yes|PROTECTED_MODE=no|" "$dir/create-cluster"
#  $dir/create-cluster start
#  $dir/create-cluster create
}
install_redis "$redis_version" "$redis_installDir"
exit 0

增加執(zhí)行權(quán)限

chmod a+x /tmp/install_redis.sh

運(yùn)行當(dāng)前的bash文件

bash InstallRedis.sh

基本上后端需要這些工具

配置后端項(xiàng)目 Maven項(xiàng)目直接通過(guò) clean 和 package 就可以將項(xiàng)目進(jìn)行打包
-

先點(diǎn) clean,之后點(diǎn)package,后端項(xiàng)目就打包完成。之后package完成之后會(huì)生成一個(gè)target文件,target文件內(nèi)估計(jì)生成一個(gè)xxxx.jar文件,這個(gè)jar文件就是打包的文件,如果在ide中沒有看到這個(gè)target文件,可以去項(xiàng)目的本地文件夾中看一下。 將jar文件上傳到服務(wù)器中

這里可以使用任何帶有ftp功能的客戶端進(jìn)行上傳,Winscp,Xftp,Xterminal都可以,建議在上傳之前創(chuàng)建一個(gè)項(xiàng)目文件夾,單獨(dú)存放文件。

上傳之后運(yùn)行jar文件

java -jar xxx.jar -spring.profiles.active=dev

jar后面的內(nèi)容可以刪除,主要是為了換一個(gè)環(huán)境進(jìn)行啟動(dòng)java項(xiàng)目

之后可以輸入服務(wù)器的網(wǎng)址進(jìn)行訪問(wèn),可以一些返回的結(jié)果

spring:
  datasource:
    driver-class-name: com.cj.mysql.jdbc.Driver
    url: jdbc:mysql://192.168.198.149:3306/xxx?useSSL=false
    username: root
    password: xxxxx
  redis:
    host: 127.0.0.1
    port: 6379
#    password: 115474287Zxcczld
  server:
    port: 8080
    servlet:
      context-path: /api #設(shè)置路徑前綴與前端一致,默認(rèn)是/
    database: 0
    lettuce:
      pool:
        max-active: 10
        max-idle: 10
        min-idle: 1
        time-between-eviction-runs: 10s

前端配置 nginx安裝配置

nginx 配置同樣也比較麻煩,我這邊寫了一個(gè) 一鍵安裝的腳本,可以修改內(nèi)容直接使用

nginx一鍵安裝

前端項(xiàng)目打包 上傳

我們使用npm工具進(jìn)行打包

npm build

在IDE打包之后會(huì)生成一個(gè)dist文件夾,將這個(gè)文件夾的內(nèi)容和剛剛的方式一樣上傳到服務(wù)器中,可以和后端項(xiàng)目在同一個(gè)父文件夾中

配置 nginx.conf文件

找到nginx.conf文件,進(jìn)行配置,主要需要配置的是server里面的內(nèi)容,location的內(nèi)容,location后面跟的內(nèi)容是當(dāng)前dist文件所在的目錄,比如當(dāng)前dist文件在 www下面,那么內(nèi)容就是 /www/dist

之后重啟nginx服務(wù)

sudo service nginx restart

或者

sudo systemctl restart nginx

之后在瀏覽器中輸入ip地址之后,就會(huì)顯示前端的主頁(yè)內(nèi)容

注意

如果運(yùn)行之后顯示錯(cuò)誤,返回錯(cuò)誤頁(yè)面,403 或者 404 可以去/var/log/nginx 中查看錯(cuò)誤文件,是由于什么運(yùn)行不能運(yùn)行。

如果你在CentOS操作系統(tǒng)下面運(yùn)行Nginx服務(wù)出現(xiàn)權(quán)限方面的問(wèn)題,有可能是SELinux(Security Enhanced Linux)在起作用。SELinux提供了一種機(jī)制來(lái)限制進(jìn)程的權(quán)限,以此增強(qiáng)系統(tǒng)的安全性。

臨時(shí)禁用SElinux

    sudo setenforce 0
    sudo nano /etc/selinux/config

修改如下內(nèi)容:

    # This file controls the state of SELinux on the system.
    # SELINUX= can take one of these three values:
    #     enforcing - SELinux security policy is enforced.
    #     permissive - SELinux prints warnings instead of enforcing.
    #     disabled - No SELinux policy is loaded.
    SELINUX=disabled
    # SELINUXTYPE= can take one of these two values:
    #     targeted - Targeted processes are protected,
    #     mls - Multi Level Security protection.
    SELINUXTYPE=targeted

重新運(yùn)行

相信這時(shí)候已經(jīng)OK了!

到此這篇關(guān)于服務(wù)器Centos部署Spring boot 前后端項(xiàng)目的文章就介紹到這了,更多相關(guān)Centos部署Spring boot項(xiàng)目?jī)?nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • DNSLOG平臺(tái)搭建及其原理解析

    DNSLOG平臺(tái)搭建及其原理解析

    DNSlog就是存儲(chǔ)在DNS Server上的域名訪問(wèn)信息,它記錄著用戶對(duì)域名littlehann.com等的訪問(wèn)信息,類似日志文件,這篇文章主要介紹了DNSLOG平臺(tái)搭建及其原理分析 ,需要的朋友可以參考下
    2024-01-01
  • 樹莓派搭建web服務(wù)器的方法實(shí)現(xiàn)(無(wú)需公網(wǎng)IP)

    樹莓派搭建web服務(wù)器的方法實(shí)現(xiàn)(無(wú)需公網(wǎng)IP)

    本文主要介紹了樹莓派搭建web服務(wù)器的方法實(shí)現(xiàn)(無(wú)需公網(wǎng)IP),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-08-08
  • web.config(IIS)和.htaccess(Apache)配置

    web.config(IIS)和.htaccess(Apache)配置

    這些是我發(fā)現(xiàn)最有用的片段,/隨時(shí)間推移使用最多的片段。 他們處理諸如從查詢字符串,CORS標(biāo)頭重寫URL以及強(qiáng)制HTTPS重定向之類的事情
    2019-11-11
  • 教你如何用cmd快速登錄服務(wù)器

    教你如何用cmd快速登錄服務(wù)器

    這篇文章主要介紹了教你如何用cmd快速登錄服務(wù)器,本文將通過(guò)無(wú)需安裝任何工具,只要是自帶cmd終端(PowerShell也可以),均可便捷連接linux服務(wù)器,需要的朋友可以參考下
    2022-06-06
  • Git安裝和使用圖文教程(分享)

    Git安裝和使用圖文教程(分享)

    下面小編就為大家?guī)?lái)一篇Git安裝和使用圖文教程(分享)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-07-07
  • 服務(wù)器遠(yuǎn)程超出最大連接數(shù)的原因及解決

    服務(wù)器遠(yuǎn)程超出最大連接數(shù)的原因及解決

    服務(wù)器遠(yuǎn)程超出最大連接數(shù)的原因是沒有注銷退出有可能導(dǎo)致遠(yuǎn)程連接的進(jìn)程死掉,重啟服務(wù)器即可
    2014-05-05
  • Manjaro安裝CUDA實(shí)現(xiàn)教程解析

    Manjaro安裝CUDA實(shí)現(xiàn)教程解析

    這篇文章主要介紹了Manjaro安裝CUDA實(shí)現(xiàn)教程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10
  • Rsync 服務(wù)安全加固方法

    Rsync 服務(wù)安全加固方法

    Rsync 是一個(gè)通過(guò)檢查文件的時(shí)間戳和大小,來(lái)跨計(jì)算機(jī)系統(tǒng)高效地傳輸和同步文件的工具,建議您在使用 Rsync 服務(wù)端時(shí),參考本文對(duì) Rsync 服務(wù)進(jìn)行安全加固,保障數(shù)據(jù)安全
    2018-02-02
  • Hadoop中namenode和secondarynamenode工作機(jī)制講解

    Hadoop中namenode和secondarynamenode工作機(jī)制講解

    今天小編就為大家分享一篇關(guān)于Hadoop中namenode和secondarynamenode工作機(jī)制講解,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-01-01
  • 阿里云ECS服務(wù)器輕松搭建ThinkPHP環(huán)境

    阿里云ECS服務(wù)器輕松搭建ThinkPHP環(huán)境

    本文指導(dǎo)在阿里云ECS?CentOS?7.9上部署ThinkPHP框架,涉及安裝PHP、Composer、Apache,配置虛擬主機(jī)解決URL問(wèn)題及目錄權(quán)限設(shè)置,確保項(xiàng)目正常運(yùn)行,感興趣的朋友跟隨小編一起看看吧
    2025-08-08

最新評(píng)論

隆尧县| 安徽省| 昭觉县| 双峰县| 渝中区| 白朗县| 耿马| 烟台市| 星座| 新兴县| 裕民县| 双桥区| 阿巴嘎旗| 龙游县| 独山县| 揭西县| 屏东县| 肥城市| 宁河县| 南昌市| 临海市| 永年县| 鲁山县| 民乐县| 正镶白旗| 阳西县| 云龙县| 双流县| 墨竹工卡县| 綦江县| 富锦市| 志丹县| 莎车县| 宁晋县| 电白县| 工布江达县| 广水市| 陇南市| 武宁县| 永胜县| 万宁市|