项目部署到Linux服务器

Linux服务器服务搭建及项目部署超详细教程 目录1、JDK安装1.1 JDK下载1.2 解压JDK1.3 配置profile文件11.2 安装MySQL5.611.2.1 上传MySQL5.6的tar包11.2.2 安装11.2.3 开机自动启动设置11.2.4 开启远程访问11.3 安装tomcat部署项目11.3.1 创建ucenter用户11.3.2 安装tomcat11.3.3 部署用户管理项目11.4 Linux下使用FastDFS11.4.1 安装gcc11.4.2 安装libevent11.4.3 安装libfastcommon-mas 阅读详情

准备工作 - 确认端口

后端
data-project 项目后端 8007
data-web 项目前端 8010
xxxx-job-admin 定时任务 8026~9029

前端
Nginx 监听端口 8010


后端代码

环境变量参数设置

spring.datasource.url= $ {URL:jdbc:mysql://xxxx:xxxx/xxxxx?serverTimezone=GMT %2B8&useUnicode=true&characterEncoding=utf-8}
spring.datasource.username= $ {USERNAME:root}
spring.datasource.password= $ {PASSWORD:xxxxx}
spring.datasource.driverClassName= $ {DRIVER_CLASSNAME:com.mysql.cj.jdbc.Driver}

重点:$ {URL: xxxx } 设置值为 先引用环境变量,没有环境变量默认为 xxxx


脚本

项目打包后(assembly),在压缩包的bin目录下有五个sh文件,主要修改start.sh和env.sh

在这里插入图片描述

start.sh

#!/bin/sh
cd `dirname $0`
BIN_DIR=`pwd`
cd ..
DEPLOY_DIR=`pwd`
## 项目名称
APP_NAME=data-assets-server-2.1.0-SNAPSHOT
## 文件位置
APP_DIR="${DEPLOY_DIR}/lib"
rm -f tpid

## 环境变量
source ${DEPLOY_DIR}/bin/env.sh

nohup java -Djava.awt.headless=true -Dnacos.logging.default.config.enabled=false -Dloader.path=/opt/data-asset/data-assets-server-2.1.0-SNAPSHOT/lib/ -Djava.security.egd=file:/dev/./urandom  --add-opens java.base/java.lang=ALL-UNNAMED  --add-opens java.base/java.lang.reflect=ALL-UNNAMED  --add-opens java.base/java.lang.invoke=ALL-UNNAMED  --add-opens java.base/java.math=ALL-UNNAMED  --add-opens java.base/sun.net.util=ALL-UNNAMED --add-opens java.base/java.io=ALL-UNNAMED  --add-opens java.base/java.net=ALL-UNNAMED  --add-opens java.base/java.nio=ALL-UNNAMED --add-opens java.base/java.security=ALL-UNNAMED --add-opens java.base/java.text=ALL-UNNAMED  --add-opens java.base/java.time=ALL-UNNAMED  --add-opens java.base/java.util=ALL-UNNAMED  --add-opens java.base/jdk.internal.misc=ALL-UNNAMED   --add-opens java.base/java.util.concurrent=ALL-UNNAMED  --add-opens java.desktop/java.awt.font=ALL-UNNAMED -Dio.netty.tryReflectionSetAccessible=true -DIIP_HOME=/opt/data-asset/iip-ide-1.0.0-develop/ -jar  /opt/data-asset/data-assets-server-2.1.0-SNAPSHOT/lib/data-assets-server-2.1.0-SNAPSHOT.jar  --spring.config.additional-location=classpath:props/local/def.properties --server.tomcat.uri-encoding=ISO-8859-1 --server.tomcat.max-threads=400 --server.tomcat.max-http-header-size=8192 >/opt/data-asset/logs/data-asset-server/dasLog.log  2>&1 &

echo $! > tpid

echo Start Success!

解释:
nohup 后台自动运行

–add-opens java.base/java.lang=ALL-UNNAMED
使用JDK17时可能出现不兼容,因此启动时需要设置参数,例如JDK8后数据映射可能报错

2>&1是将标准错误(2)重定向到标准输出(&1),标准输出(&1)再被重定向输入到xxx.log文件中

重点:
source ${DEPLOY_DIR}/bin/env.sh 设置本文件下的env.sh为环境变量文件

-Dloader.path=xxxxxxxxxxx**
设置执行环境

-jar **/opt/data-asset/data-assets-server-2.1.0-SNAPSHOT/lib/data-assets-server-2.1.0-SNAPSHOT.jar
执行jar包位置

/opt/data-asset/logs/data-asset-server/dasLog.log
输出日志位置

env.sh

## 业务应用相关配置参数
## 应用名称
export APPLICATION_NAME='data-assets-server'
#应用编码
export APP_CODE=DAMP
#应用程序运行模式(dev or product)
export APP_MODE=dev
#应用端口
export SERVER_PORT=xxxx
#应用上下文路径
export CONTEXT_PATH=/xxx

## 数据库配置
## 业务数据源
export URL='jdbc:mysql://xxxxxx:xxxx/xxxx?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf-8'
export USERNAME='root'
export PASSWORD='xxxxx'
export DRIVER_CLASSNAME='com.mysql.cj.jdbc.Driver'

重点: 此处设置环境变量,USERNAME PASSWORD等


前端 Nginx.conf

 server {
      listen    xxxx;
      server_name xxxxx;

      location /main {
		alias /etc/nginx/html/main;
        try_files  $uri $uri/ /etc/nginx/html/main/index.html;
      }

      location /main/xxxx{
        alias /etc/nginx/html/main;
      }

      location /main/login {
        alias /etc/nginx/html/main;
      }

      location /xxxx-system {
        alias /etc/nginx/html/xxxx;
        try_files  $uri $uri/ /etc/nginx/html/xxxx/index.html;
      }

      location /das {
        add_header Access-Control-Allow-Origin *;
        add_header Access-Control-Allow-Headers: content-type;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header REMOTE-HOST $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_ignore_client_abort on;

        proxy_pass http://10.105.52.61:9007/xxx;
        client_max_body_size   1000m;
        proxy_cookie_path /api /;
      }

       location /xxxx-app {
        add_header Access-Control-Allow-Origin *;
        add_header Access-Control-Allow-Headers: content-type;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header REMOTE-HOST $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_ignore_client_abort on;

        proxy_pass  http://10.105.52.61:9013/xxxx-app;
        client_max_body_size   1000m;
        proxy_cookie_path /api /;
      }

      error_page  500 502 503 504  /50x.html;
      location = /50x.html {
        root  html;
      }
}

解释:

location /main
检测网址中的关键字(例如:http://10.105.52.61:9013/main/xxxx/…)

alias /etc/nginx/html/xxxx;
访问资源路径

try_files $uri $uri/ /etc/nginx/html/xxxx/index.html;
资源路径不存在时默认访问

proxy_pass
内网穿透,访问 http://10.105.52.61:9013/xxxx-app;

前端App.js

const list = [
  {
​    "name": "xxxx",
​    "url": "http://10.105.52.62:9010/xxxx-system/",
​    "container": "#xxxx",
​    "label": "系统功能",
​    "id": "xxxx-system-element-plus"
  },
  {
​    "name": "web",
​    "url": "http://10.105.52.62:9010/web/",
​    "container": "#web",
​    "label": "测试低代码子应用",
​    "id": "xxx-lowcode-app"
  }
]

window.microAppList = list

解释:

name为xxxx的网址,真实完整url为 http://10.105.52.62:9010/xxxx-system/

可以看出name是声明,主体以xxxx-system为主

Linux服务器操作

查看端口对应服务
netstat -ntulp | grep 9013

解压压缩包
tar -xzvf xxx.tar.gz

如何将项目部署到服务器上(全套教程) 项目部署到服务器需要两个大步骤1、购买服务器(这里使用的是阿里云)2、配置环境(也是最麻烦的)如果是SpringBoot项目则不用配置tomcat如果不是SpringBoot项目则还需要配置tomcat3、使用nohupjava-jarxxx.jar&命令执行部署先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。httpshttpshttpshttpshttpshttpshttpshttpshttps。... 阅读详情

相关推荐

如何把web项目部署到Linux云服务器(详细流程)

本文目录 购买服务器 操作工具—-用于远程连接,操作云服务器 熟悉Linux环境 java配置 FTP配置,用于上传文件(maven项目的war包)到服务器 mysql 配置 tomcat配置 在阿里云开放端口 通过外网IP地址访问 通过域名访问 本文目录 购买服务器 以阿里云为例 操作工具—-用于远程连接,操作云服务器 如何连接 熟悉Li...

老孟嘚吧嘚 1万+

将项目部署到Linux系统上

1.在本地Idea中开发一个springboot项目,并且打包成jar包,在maven里面点击package就可以进行打包 ,打成的包在target文件夹里面。此时你在任意一台电脑上访问服务器的ip地址:http:192.168.58.130:8080/hello,都可以访问到我们的页面。,然后这个程序就在后台运行了,即使关掉终端窗口,也还是在继续运行。4.检查服务器的防火墙,确保服务器的8080端口是对外开放的,这样浏览器才能成功访问到服务器上的springboot项目。将jar包上传到这个文件夹。

weixin_47414034的博客 2980

【前端部署】多个vue项目部署到Linux服务器

利用nginx将两个vue项目打包部署到服务器上,之前已在服务器上部署过单个项目, 此次在单个项目部署的基础上进行修改,并将两个项目布置在同一端口下。

weixin_43166884的博客 2257

项目部署到Linux服务器上

目录1.连接到远程的MySQL数据库,创建数据库:2.检查项目中的连接MySQL服务器的地址和密码(如果本地密码和服务器密码一致,此步骤可忽略)3.使用Maven打包项目,生成一个xxx(文件名).war包。4.一定要将这个war包放入到Tomcat中的webapps文件夹下(拖拽上传)。5.重启Tomcat,使用url地址访问项目使用查看Tomcat是否真正被关闭:6.二次更新项目(第二次及以上更新)注意事项(1)一定要先停止Tomcat(防止文件被占用,导致未更新成功),再上传项目,在启动tomcat。

mzpqq的博客 3230

如何将JavaWeb项目部署到Linux服务器

将JavaWeb项目部署到服务器需要先在服务器安装tomcat、数据库、Java环境,没有安装的同学先装好以上三件套,当装好这三样后就可以开始部署JavaWeb项目了 右击JavaWeb项目—>Export—>WAR file 我之前已经部署过了,如果没有WAR file 选择,则点击Export…输入war选择WAR file 点击WAR file后出现弹框,点击Browse选...

pppppppppppppigkang的博客 1277

springboot 项目部署到Linux 服务器

各位同学大家好,有段时间没有更新博客了具体多久 我也不记得哈,今天刚刚好是七夕节,所以就给大家更新一下,最近因为在学习和录制springboot的课程,需要用到linux服务器部署项目 ,所以我就写个博客记录下。那么废话不多说,我们正式开始。springboot的部署非常的傻瓜式简单 比起传统的springmvc 项目来说 springboot 我们只需要打包成一个jar 然后后运行jar 包即可。......

xq610928的博客 3816

如何将项目部署到Linux服务器上

也可通过在redis目录下执行./bin/redis-server ./redis.conf 启动redis 此方式采取显示启动方式 如在配置文件设置了daemonize属性为yes则跟后台进程方式启动其实一样。可通过在redis目录下执行 ./bin/redis-server& ./redis.conf 启动redis 此启动方式是采取后台进程方式。·将redis.config文件从redis目录下的redis-5.0.14中复制一份到redis目录下。

m0_67305099的博客 1801

时序基础模型Timer-S1:十亿参数如何革新时间序列预测

时间序列预测是数据分析与机器学习中的核心任务,旨在基于历史数据预测未来趋势。其原理在于捕捉数据中的趋势、周期性和季节性等时序依赖关系。这项技术的价值在于赋能业务决策,广泛应用于金融风控、能源管理、物联网监控和供应链优化等关键场景。传统方法依赖针对特定任务的专用模型,面临泛化能力弱和开发成本高的挑战。本文聚焦的时序基础模型,通过在海量跨领域数据上进行预训练,学习时序通用模式,并结合十亿级参数带来的强大容量,实现了性能的显著突破。这种范式转变,使得模型能够像“全科医生”一样,通过少量数据微调即可快速适应新任务,

weixin_29164843的博客 268

linux服务器项目部署完整版

    之前总玩v8虚拟机,最近看到腾讯云学生套餐很实惠就租了个linux服务器搭一个项目,做下这个项目部署全记录,即为了方便以后查看,同时也分享下自己的经验,不足之处还请多多指教,废话不多说,直接开始!!!     注:因为我租的腾讯云ContOS6.5服务器,没有图形化界面,只有命令窗口,所以全程使用linux命令操作,我用的是Xshell做代理直接在windows下访问linux服务器,腾...

Java_自由人 2万+

STM8S全解析之系列文章4---STM8S芯片项目升级引导程序(使用中断接收升级数据)

STM8S全解析之系列文章4—STM8S芯片项目升级引导程序(使用中断接收升级数据) 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 例如:第一章 Python 机器学习入门之pandas的使用 文章目录STM8S全解析之系列文章4---STM8S芯片项目升级引导程序(使用中断接收升级数据)前言一、Flash划分boot和App二、使用步骤1.引入库2.读入数据总结 前言 用过STM8S都知道它没有中断向量重定向,也就意味着STM8S的中断向量没办法指向其他的位置,间接说明升级的引导

weixin_39853312的博客 1030

在VM虚拟机的MobaXterm下安装JDK17

本文介绍了在Linux系统下安装配置JDK17的完整步骤:1)从Oracle或OpenJDK官网下载Linux版JDK17压缩包;2)上传至/usr/local目录;3)解压安装包;4)通过编辑/etc/profile文件配置环境变量,添加JAVA_HOME和PATH路径;5)使用source命令使配置生效;6)通过javac -version验证安装是否成功。整个过程涵盖了从下载到环境配置的完整流程,确保Java开发环境正确设置。

qq_2937655951的博客 441

项目手动部署到Linux服务器

介绍了如何手动部署项目的前后端到Linux服务器。

淞小菜同学的博客 1132

NX/UG二次开发—CAM—设置程序修剪边界Boundary

最近做了一个设置CAM程序边界的小工具,分享一下经验(官方的代码在文章末尾处),以下均以修剪边界曲线为例。 以下为官方提供的源码: /***************************** Include Files **********************************/ #include <stdlib.h> #include <uf.h> #include <uf_obj.h> #include <uf_object_type

门前大桥下,游过一群鸭,快来看一看,原来是C++ 3733

linux服务器项目部署

在我们将一个项目完成之后,如果想让别人访问,就需要将项目部署到Linux服务器上,那么部署流程是怎样的?

unstoppable_t的博客 7895

Windows Server 2016上,手把手教你搭建MDT 8456自动化部署环境(含ADK 2004与WDS配置)

本文详细指导在Windows Server 2016上搭建MDT 8456自动化部署环境,涵盖ADK 2004与WDS配置全流程。通过标准化操作系统部署、应用程序静默安装和驱动程序注入,实现企业级自动化部署解决方案,显著提升IT运维效率。特别针对兼容性问题和权限陷阱提供实战解决方案。

weixin_29876033的博客 385

【箱子之字形摆放】python实现-附ChatGPT解析

箱子之形摆放有一批箱子(形式为宁符串,设为str) ,要求将这批箱子按以之形的顺序摆放在宽度为n的空地,请输出箱子的摆放结果。例如:箱子为ABCDEFG,空地宽度为3,摆放结果如图:则输出结果为:AFGBECD输入一行字符串,通过空格分制,前面部分为字母或数字组成的字符串str,表示;后面部分为一个数字n,表示。ABCDEFG 3箱子摆放结果,如题目示例所示AFGBECD。

sinat_29950703的博客 370

2024年最全项目部署——Vue项目部署到云服务器(linux)_linux部署vue项目

因为期末了,要检查web大作业,虽然没有要求,但我想把项目部署一下,以免每次都要打开运行了,部署过踩了许多坑,这里总结一一下这次部署的流程吧。项目我个人进行前后端分离的全栈开发,有后台,后台部署的过程由于篇幅原因将在下一篇中讲解。

2401_83974590的博客 1595

【CASS精品教程】006:CASS7.1 道路设计参数文件打开无响应,提示roadpara解决办法,权威解决办法汇总

在用CASS7.1 软件进行断面法土方量计算,在生成断面图后,需要进行道路设计参数文件的设计,打开断面设计参数文件的时候,无响应,提示roadpara,如下所示: 道路设计参数文件 解决办法有三种 第一种方法:Win+R (1)64位系统:输入regsvr32 C:\Windows\SysWOW64\CellCtrl5.ocx,回车 (2)32位系统输入regsvr32 C:...

智慧空间实验室 1万+

【JavaEE进阶】部署Web项目到Linux服务器

本篇博文主要内容为如何将本机的Web项目部署到Linux服务器上我们在⼯作中会涉及到几个"环境"开发环境: 开发⼈员写代码用的机器.测试环境: 测试⼈员测试程序使用的机器.⽣产环境(线上环境): 最终项⽬发布时所使⽤的机器.对稳定性要求很⾼.把程序安装到⽣产环境上,这个过程称为"部署".也叫"上线"⼀旦程序部署成功,那么这个程序就能被外网中千千万万的普通用户访问到.换句话说,如果程序有BUG,这个BUG也就被千千万万的⽤⼾看到了.

m0_71731682的博客 1584

Python爬虫实战:美团外卖商家数据抓取与分析

随着互联网技术的快速发展,外卖平台已成为人们日常生活中不可或缺的一部分。本文基于Python爬虫技术,使用最新的异步爬虫框架和反爬虫绕过技术,实现了对美团外卖平台商家信息与评分数据的自动化抓取。通过对抓取数据的清洗、存储和分析,为餐饮行业市场研究和商业决策提供数据支持。本文详细介绍了爬虫的设计思路、技术实现方案、数据处理方法以及可视化分析结果,为相关领域的研究者和开发者提供参考。关键词:Python爬虫;美团外卖;数据抓取;数据分析;异步爬虫。

2201_76125261的博客 1821

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Java项目怎么从零部署到Linux服务器上?

本文为Java开发者提供了一份详尽的Linux服务器部署指南。从JDK和MySQL的安装开始,逐步引导读者如何上传并运行Java项目Jar包。无论你是初学者还是希望优化部署流程的资深开发者,本文都会提供实用的步骤和技巧,确保你的Java应用在Linux环境下顺利运行。

luming的博客 3593

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

vue项目打包部署linux_Vue项目部署到Linux服务器

首先需要拥有一台服务器,我用的是阿里云的CentOS。下面就让我们开始吧!1、部署服务器一、配置阿里云端口进入阿里云控制台,安全组 -> 配置规则进入配置端口,开放了对应的端口,服务器才能访问。二、安装Xshell和,XftpXshell用来连接服务器,Xftp用来上传或者删除文件,十分的方便。下面给出下载地址:https://www.netsarang.com/zh/xshell/1、用X...

weixin_39596739的博客 3571

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

基础Linux服务器的搭建以及项目部署

基础Linux服务器的搭建以及项目部署 一、引言 购买一台阿里云服务器(也可用虚拟机代替,本人使用的阿里云服务器),下载finalshell,并使用finalshell连接服务器。 二、安装jdk 1.首先去官网下载Java的tar.gz压缩包,版本可自己选择,这里提供一个网址。 https://www.oracle.com/technetwork/java/javase/downloads/jd...

qq_42474190的博客 2980

vue项目怎样部署到linux服务器

如果您的项目涉及到敏感数据或重要功能,请考虑采取额外的安全措施。(如果有域名): 如果您使用域名来访问Vue项目,确保您的域名已正确解析到您的Linux服务器的IP地址。: 在Linux服务器上,您需要安装一个Web服务器来托管您的Vue项目。: 在部署之前,您需要生成Vue项目的生产环境代码。: 现在,您应该能够通过域名或服务器IP地址来访问您部署在Linux服务器上的Vue项目。目录中的代码上传到您的Linux服务器。),添加一个新的server配置块来指向您上传的Vue项目代码。

qq_33192454的博客 1104

部署python项目到linux服务器

部署python项目到linux服务器 原文链接:https://www.lanshiqin.com/d8d0505b/ 发表于 2018-08-12 | 更新于 2019-03-10 | 分类于 随笔 | 阅读次数: 4782 最近用Python写了个外挂,需要部署到Linux环境的服务器上,由于之前本地开发时使用virtualenv,使用这个虚拟环境有个好处是项目中依赖的库不会是全局的,...

lizhou828的专栏 2081
上一篇: maven构建报错401Unauthorized
下一篇: Docker基础命令
一本小书
博客等级 码龄7年 106粉丝 19原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值