首页 > 系统相关 >腾讯云Linux服务器 前端Nginx+后端 项目部署

腾讯云Linux服务器 前端Nginx+后端 项目部署

时间:2024-02-22 21:35:27浏览次数:51  
标签:tar nginx jar gz maven Nginx user Linux 服务器

一、前端项目部署

1. 安装 nginx 服务器:

在root目录下创建services文件并下载nginx源文件【nginx-1.21.6.tar.gz】 

建议尽量选择稳定版本下载   nginx官网下载地址​​​​

cd /root 
mkdir services
cd services
curl -o nginx-1.21.6.tar.gz http://nginx.org/download/nginx-1.21.6.tar.gz
 
#解压文件
tar -zxvf nginx-1.21.6.tar.gz
 
#检查下载文件是否完整
cd nginx-1.21.6
./configure
 
#安装pcre和ssl资源库
yum install pcre pcre-devel -y
yum install openssl openssl-devel -y
 
#设置系统配置参数
./configure --with-http_ssl_module --with-http_v2_module --with-stream
 
#编译、安装nginx文件
make
make install
 
#添加环境变量
vim /etc/profile
在最后一行添加:export PATH=$PATH:/usr/local/nginx/sbin
 
#激活环境变量
source /etc/profile
 
#启动
nginx
 
#查看启动情况
netstat -ntlp 
 
#查看nginx是否安装成功
nginx -v

2.在nginx中部署前端项目

#将前端项目build打包 并将打包好的dist文件压缩 直接上传至linux
#在/root/services/user-center-front 目录下 解压dist文件
unzip dist.zip
#修改nginx.conf配置文件
cd /usr/local/nginx/conf
vim nginx.conf

nginx.conf配置如下

 配置完Nginx后 如可顺利访问80端口 前端即部署成功!!

3.可能遇到的bug

  常见问题①:项目部署好之后 访问80端口 跳转至nginx首页 并未跳转到前端项目首页

       原因:nginx.conf 修改的配置未生效

       处理:nginx -s reload

  常见问题②:项目部署好之后 访问80端口“403”

       ps -ef|grep 'nginx' #查看nginx进程情况

       发现nginx启动用户为nobody

       处理:修改ngixn.conf文件 将nobody改成root

  常见问题③ 项目部署好之后 访问80端口

       提示:无法反问网站 意外终止了连接

       处理:配置有问题 建议重新安装一遍

二、后端项目部署

  需要安装的环境:java、maven、git

#git安装
sudo yum install git
 
#下载代码
git clone xxx 
 
#jdk安装
yum install -y java-1.8.0-openjdk*
 
#maven安装
curl -o apache-maven-3.8.5-bin.tar.gz https://dlcdn.apache.org/maven/maven-3/3.8.5/binaries/apache-maven-3.8.5-bin.tar.gz
#解压、设置mvn环境变量、
tar -zxvf apache-maven-3.8.5-bin.tar.gz
vim /etc/profile
#在原环境变量后添加:和mvn目录下bin路径即可
export PATH=$PATH:/usr/local/nginx/sbin:/root/apache-maven-3.8.8/bin
#检查mvn是否安装成功
mvn -v
 
#在user-center-backend项目目录下 进行打包构建,跳过测试
mvn package -DskipTests #第一次打包可能非常慢 可以自行切换mvn镜像源
 
#完成后在target目录中会看到打包好的user-center-backend-0.0.1-SNAPSHOT.jar
#--spring.profiles.active=prod可不加 
java -jar ./user-center-backend-0.0.1-SNAPSHOT.jar --spring.profiles.active=pro
 后端部署成功!!!

 

可能遇到的问题:

  启动项目时 jar包不能访问

    Error:Unable to access jarfile .user-center-backend-0.0.1-SNAPSHOT.jar

    处理:chmod a+x user user-center-backend-0.0.1-SNAPSHOT.jar #给所有用户添加这个文件的执行权限

  项目启动后命令窗口失效

    处理:使用 nohup执行 结尾处添加 %;项目自动在后台运行

    命令:nohup java -jar ./user-center-backend-0.0.1-SNAPSHOT.jar --spring.profiles.active=prod &

标签:tar,nginx,jar,gz,maven,Nginx,user,Linux,服务器
From: https://www.cnblogs.com/amoszha/p/18028251

相关文章

  • Linux---nfs服务
    1.nfs概述NFS(NetworkFileSystem)是一种在网络上实现文件共享的协议。它允许用户通过网络访问远程服务器上的文件和目录,使得这些文件和目录在本地计算机上看起来就像是本地文件和目录一样。NFS最初由SunMicrosystems开发,现在已经成为一种广泛使用的标准协议,被各种操作系统和平台......
  • linux统计字符串出现次数(linux查询关键字出现的个数了解)
     使用脚本统计字符串出现次数#!/bin/bash#获取要监控的本地服务器IP地址IP=`ifconfig|grepinet|grep-vE'inet6|127.0.0.1'|awk'{print$2}'`echo"IP地址:"$IP#获取cpu总核数cpu_num=`grep-c"modelname"/proc/cpuinfo`echo"cpu总核数:&q......
  • Linux---rsync服务
    1.rsync简介rsync英文称为remotesynchronization,从软件的名称就可以看出来,rsync具有可使本地和远程两台主机之间的数据快速复制同步镜像、远程备份的功能,这个功能类似于ssh带的scp命令,但是又优于scp命令的功能,scp每次都是全量拷贝,而rsync可以增量拷贝。当然,rsync还可以在本地主......
  • linux特殊命令使用方法
    tail-5f  a.log   //实时查看a.log这个文件的内容sudofirewall-cmd--permanent--direct--add-ruleipv4filterOUTPUT0-ptcp--dport5353-d118.118.118.118-jDRO  //添加防火墙策略  系统性能监控lsof-i-P-n|grep-E"(:443|:80|:514)"  ......
  • ubutun部署nginx 静态页面资源
    本教程使用安装包安装安装前你需要安装以下依赖apt-getinstallgccapt-getinstalllibpcre3libpcre3-devapt-getinstallzlib1gzlib1g-devsudoapt-getinstallopensslsudoapt-getinstalllibssl-dev说明:Nginx是高度自由化的Web服务器,它的功能是由许多模块来支持......
  • MSSQL 建立链接服务器
     --建立Oracle数据库链接服务器EXECsp_addlinkedserver@server=N'POS',--要创建的链接服务器别名@srvproduct=N'Oracle',--产品名称@provider=N'OraOLEDB.Oracle',--OLEDB驱动名称@datasrc=N'192.168.1.240/gbpos'--数据源oracle"ora10g&qu......
  • Docker Swarm部署nginx+api-service实现负载均衡
    背景介绍api服务开发完毕之后如何快速部署实现负载均衡。如果不是重量级的项目,非常建议使用DockerSwarm来实现,非常简单高效且稳定。关于DockerSwarm集群的构建详见我的另一篇博客:DockerSwarm集群搭建相关文件准备(这里以一个ocr服务为例)docker-compose.ymlversion:'......
  • Linux文本处理三剑客---grep
    1.什么是grep和egrep示例grep[options]pattern[file...]其中,pattern表示要搜索的模式,可以是简单的文本字符串,也可以是正则表达式。file指定要在其中进行搜索的文件,如果省略file,则默认从标准输入中读取数据。egrep其实就是grep的一个变种,它支持更多的正则表达式语法。egre......
  • arm架构 麒麟系统,linux环境安装Oracle Instant Client
    $wgethttps://download.oracle.com/otn_software/linux/instantclient/instantclient-basic-linux-arm64.zip$unzipinstantclient-basic-linux-arm64.zip$wgethttps://download.oracle.com/otn_software/linux/instantclient/instantclient-sqlplus-linux-arm64.zip......
  • linux ftp服务选择与ftp(vsftpd,Pure-FTPd)服务安装使用教程(转载)
    一linuxftp常用的服务软件在Linux系统中,最常用的ftp有vsftpd,Pure-FTPd,ProFTPd,Wu-FTPd,glftpd,他们的特性优缺点如下对比图:常用的5款linuxftp对比图:软件 特性 优点 缺点vsftpd 轻量级、安全、易于配置 安全性高、性能好、易于配置 功能较为简单Pure-FTPd 安全、可扩展、......