当前位置: 首页 > news >正文

ELAdmin 部署

后端部署

按需修改 application-prod.yml
例如验证码方式、登录状态到期时间等等。
修改完成后打好 Jar 包
在这里插入图片描述
执行完成后会生成最终可执行的 jar。JPA版本是 2.6,MyBatis 版本是 1.1。
在这里插入图片描述
启动命令

nohup java -jar eladmin-system-2.6.jar --spring.profiles.active=prod > nohup.out 2>&1 &

如果使用了CICD 工具,可能还需要停止的

PID=$(ps -ef | grep eladmin-system-1.1.jar | grep -v grep | awk '{ print $2 }')
if [ -z "$PID" ]
then
echo Application is already stopped
else
echo kill -9 $PID
kill -9 $PID
fi

配置 nginx,可以是 http的 80 端口,也可以是 https的 443 端口。

server {listen 80;server_name 域名/当前服务器外网IP;location / {proxy_pass http://127.0.0.1:8000; #这里的端口记得改成项目对应的哦proxy_set_header X-Forwarded-Proto $scheme;proxy_set_header X-Forwarded-Port $server_port;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection "upgrade";}}

如果是 443

    server {listen       443 ssl;server_name  eladmin.luotayixing.com;ssl_certificate      ssl/eladmin.luotayixing.com_bundle.crt;ssl_certificate_key  ssl/eladmin.luotayixing.com.key;ssl_session_cache    shared:SSL:1m;ssl_session_timeout  5m;ssl_ciphers  HIGH:!aNULL:!MD5;ssl_prefer_server_ciphers  on;location / {proxy_pass http://127.0.0.1:8000;proxy_set_header X-Forwarded-Proto $scheme;proxy_set_header X-Forwarded-Port $server_port;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection "upgrade";}}

另外,nginx头部需要指定用户,默认是 nobody,可以换成对应用户,测试可以用 root

#user  nobody;
user root;

前端部署

鉴于本人前端能力实在有限,只测试了History 模式的,这里也不会介绍 Hash模式。
前面已经将后端部署上了,如果要本地启动的时候直接访问后端的接口,就需要修改.env.development,比如改成下面这样(如要后端配置了 80 端口,或者 80 和 443 都配置了)

ENV = 'development'# 接口地址
# VUE_APP_BASE_API  = 'http://localhost:8000'
# VUE_APP_WS_API = 'ws://localhost:8000'
VUE_APP_BASE_API  = 'http://eladmin.luotayixing.com'
VUE_APP_WS_API = 'ws://eladmin.luotayixing.com'# 是否启用 babel-plugin-dynamic-import-node插件
VUE_CLI_BABEL_TRANSPILE_MODULES = true

构建之前,修改下.env.production,比如改成 https 的

ENV = 'production'# 如果使用 Nginx 代理后端接口,那么此处需要改为 '/',文件查看 Docker 部署篇,Nginx 配置
# 接口地址,注意协议,如果你没有配置 ssl,需要将 https 改为 http
VUE_APP_BASE_API  = 'https://eladmin.luotayixing.com'
# 如果接口是 http 形式, wss 需要改为 ws
VUE_APP_WS_API = 'wss://eladmin.luotayixing.com'

执行npm run build:prod,或者用 idea,打开 package.json,点击对应行前面的箭头
在这里插入图片描述
执行完成后,根目录下的 dist 就是生成好的,可以放到服务器上
在这里插入图片描述

配置 nginx,如果是 80端口

server{listen 80;server_name 域名/外网IP;index index.html;root  /home/wwwroot/eladmin/dist;  #dist上传的路径# 避免访问出现 404 错误location / {try_files $uri $uri/ @router;index  index.html;}location @router {rewrite ^.*$ /index.html last;}  } 

如果是 443 端口

    server {listen       443 ssl;server_name  mp.luotayixing.com;ssl_certificate      ssl/mp.luotayixing.com_bundle.crt;ssl_certificate_key  ssl/mp.luotayixing.com.key;ssl_session_cache    shared:SSL:1m;ssl_session_timeout  5m;ssl_ciphers  HIGH:!aNULL:!MD5;ssl_prefer_server_ciphers  on;index index.html;root  /root/eladmin/dist/;location / {try_files $uri $uri/ @router;index  index.html;}location @router {rewrite ^.*$ /index.html last;}}

完成后重启 nginx,访问配置好的域名,比如本人的是https://mp.luotayixing.com/
在这里插入图片描述

相关文章:

  • String为什么是不可变的
  • LabVIEW伺服阀动静态测试系统
  • 第四篇:SQL语法-DDL-数据定义语言
  • vue的网络请求以及封装
  • ClickHouse--10--临时表、视图、向表中导入导出数据
  • 奔跑吧小恐龙(Java)
  • Python是垃圾?千万不要再学Python了?
  • Python爬虫之文件存储#5
  • BDD - Python Behave 用户自定义配置文件
  • 从REPR设计模式看 .NET的新生代类库FastEndpoints的威力
  • 50. C++ 指针函数与函数指针
  • 【Linux取经路】文件系统之被打开的文件——文件描述符的引入
  • C++Linux网络编程:poll模型和简单使用
  • 问题:从完整的问题解决过程来看,( )是首要环节。A.理解问题 B.提出假设C.发现问题 D.检验假设 #学习方法#学习方法
  • 高斯伪谱C++封装库开源!
  • 【React系列】如何构建React应用程序
  • 【跃迁之路】【519天】程序员高效学习方法论探索系列(实验阶段276-2018.07.09)...
  • 08.Android之View事件问题
  • 77. Combinations
  • Android 架构优化~MVP 架构改造
  • Effective Java 笔记(一)
  • Golang-长连接-状态推送
  • Java教程_软件开发基础
  • Js基础知识(四) - js运行原理与机制
  • js学习笔记
  • LintCode 31. partitionArray 数组划分
  • magento 货币换算
  • Three.js 再探 - 写一个跳一跳极简版游戏
  • Xmanager 远程桌面 CentOS 7
  • 检测对象或数组
  • 紧急通知:《观止-微软》请在经管柜购买!
  • 罗辑思维在全链路压测方面的实践和工作笔记
  • 名企6年Java程序员的工作总结,写给在迷茫中的你!
  • 全栈开发——Linux
  • 如何在 Tornado 中实现 Middleware
  • 如何在GitHub上创建个人博客
  • 入口文件开始,分析Vue源码实现
  • 深入 Nginx 之配置篇
  • 使用SAX解析XML
  • ​比特币大跌的 2 个原因
  • # Panda3d 碰撞检测系统介绍
  • #LLM入门|Prompt#3.3_存储_Memory
  • $.extend({},旧的,新的);合并对象,后面的覆盖前面的
  • (android 地图实战开发)3 在地图上显示当前位置和自定义银行位置
  • (c语言)strcpy函数用法
  • (转)Linq学习笔记
  • (转)利用PHP的debug_backtrace函数,实现PHP文件权限管理、动态加载 【反射】...
  • (自适应手机端)响应式新闻博客知识类pbootcms网站模板 自媒体运营博客网站源码下载
  • .gitignore文件—git忽略文件
  • .net 发送邮件
  • .NET 自定义中间件 判断是否存在 AllowAnonymousAttribute 特性 来判断是否需要身份验证
  • .net之微信企业号开发(一) 所使用的环境与工具以及准备工作
  • 。Net下Windows服务程序开发疑惑
  • /var/log/cvslog 太大
  • @value 静态变量_Python彻底搞懂:变量、对象、赋值、引用、拷贝