Linux前后端程序部署

1.总述

首先安装包类型分为

二进制发布包安装:找到对应自己的linux平台版本(CentOS还是redhat等),的具体压缩文件,解压修改配置

源码编译安装:需要自己进行编译

对于redhat安装包,可以使用rpm命令进行安装,但是rpm命令安装不能够解决依赖库的问题,常用的rpm命令,只用于卸载和查看,安装的话一般常用yum命令

rpm -e --nodeps 文件名 用于卸载

rpm -qa | grep 具体名(例firefox) 查看已安装软件包中包含firefox的条目

yum install ksh 联网在线下载ksh文件

yum localinstall 本地下载rpm包

2.安装jdk(二进制解压安装说明)

2.1官方下载二进制安装包

tar -zxvf /usr/local/src/jdk-11.0.18_linux_x64_bin.tar.gz -C /usr/local/ 解压目录

2.2配置环境变量

建议使用虚拟机,打开profile文件进行修改,当然也可以用命令

vim /etc/profile

export JAVA_HOME=/usr/local/jdk-11.0.18

export PATH=PATH:JAVA_HOME/bin 在linux中追加为:在windows中追加为;即命令意思为 PATH=PATH+JAVA_HOME/bin

2.3 source /etc/profile 更新配置文件

2.4 java -version 测试

3.安装MySQL(rpm包安装说明)

官网上下载mysql的rpm包,上传所有rpm包到usr/local/src/mysql下

yum localinstall /usr/local/src/mysql/* -y 本地安装mysql下的所有rpm文件,所有都默认是是

systemctl start mysql 启动mysql服务器

mysql -uroot -p 使用日志提供的密码登录mysql,此操作与windows窗口一致

紧接着创建新的账号密码,此操作为运维干的,不属于java后端

alter user 'root'@'localhost' identified by '1qaz@WSX';账户root只能服务器本机能够登录,重置密码为1qaz@WSX

create user 'aa'@'%' identified by '1qaz@WSX';创建用户aa可以被任意位置机器访问

grant all privileges on *.* to 'aa'@'%'; -- 授权 给所有机器aa账户的所有权限进行授权

flush privileges;刷新权限

exit;退出mysql

firewall-cmd --zone=public --add-port=3306/tcp --permanent 防火墙开放3306端口

firewall-cmd --reload 重新加载配置

4.安装Redis(源码包安装说明)

官方下载源码包,由于redis底层是c编写的,所以先配置c的环境

yum install gcc automake autoconf libtool make -y 安装c环境依赖

tar -zxvf /usr/local/src/redis-3.0.7.tar.gz -C /usr/local/src/ 解压redis到src中

cd /usr/local/src/redis-3.0.7/ 进入到redis-3.0.7目录下

make 编译 此处放的是源码

make PREFIX=/usr/local/redis install 安装redis到redis文件夹中,此文件夹中装的是软件

cp /usr/local/src/redis-3.0.7/redis.conf /usr/local/redis/bin/ 将源码包中的配置文件拷贝到安装包中

vim /usr/local/redis/bin/redis.conf 开始修改配置文件

将daemonize no选项修改成daemonize yes 即后台运行改为yes

设置bind为 bind 0.0.0.0 其他机器(非只有本机)可以访问此端口

设置requirepass的值为aa 密码改为aa

/usr/local/redis/bin/redis-server /usr/local/redis/bin/redis.conf 启动redis

firewall-cmd --zone=public --add-port=6379/tcp --permanent 防火墙端口开放

firewall-cmd --reload 防护墙重新加载配置

ps -ef | grep redis 查看redis的进程

kill -9 redis进程号 强杀redis进程

5.后端部署

1.首先是数据的迁移,即java开发做好的mysql数据库表导入到到服务器linux中

java中的数据库export with mysqldump 转储路径为自己mysql安装包bin下的mysqldump.exe

声明为insert with columns然后转到服务器数据库执行sql脚本即可,但应重点检查sql语句中是否有删库再建库的语句

2.然后就是java代码迁移到服务器中,即项目的部署

部署项目首先在java配置文件中把用户名和密码改为服务器的用户名和密码

pom.xml中添加打包repackage的配置,将测试打包关掉maven组件按钮进行清除打包

在target中找到打好的jar包,上传到服务器上

nohup java -jar /usr/local/sky-take-out.jar --server.port=9090 > /usr/local/9090.log &后台运行程序,将运行记录记录在/usr/local/9090.log中

最后放行9090防火墙端口即可

6.前端程序部署

前端程序需要部署到nginx中,nginx安装为源码包安装安装过程参照redis安装

nginx可作为静态资源服务器,部署html、css、js等静态资源代码

同时也做反向代理,就是对服务端进行代理,浏览器将请求发送到nginx,nginx会将合适的请求转发给后端的tomcat

并且可做负载均衡服务器

相关推荐
运维&陈同学1 小时前
【Elasticsearch05】企业级日志分析系统ELK之集群工作原理
运维·开发语言·后端·python·elasticsearch·自动化·jenkins·哈希算法
シ風箏2 小时前
Neo4j【环境部署 02】图形数据库Neo4j在Linux系统ARM架构下的安装使用
linux·数据库·arm·neo4j
ZVAyIVqt0UFji4 小时前
go-zero负载均衡实现原理
运维·开发语言·后端·golang·负载均衡
Cachel wood4 小时前
Vue.js前端框架教程8:Vue消息提示ElMessage和ElMessageBox
linux·前端·javascript·vue.js·前端框架·ecmascript
小屁不止是运维7 小时前
麒麟操作系统服务架构保姆级教程(二)ssh远程连接
linux·运维·服务器·学习·架构·ssh
gavin_gxh8 小时前
SAP PP ECN CSAP_MAT_BOM_MAINTAIN
运维·经验分享·其他
黑客K-ing8 小时前
网络安全防范
linux·服务器·web安全
这题怎么做?!?9 小时前
ARP协议及其具体过程
运维·服务器·网络
Lay_鑫辰9 小时前
禾川HCQ1系列PAC脉冲控制步进驱动器
运维·人工智能·单片机·嵌入式硬件·自动化
卡卡大怪兽9 小时前
fastAPI接口的请求与响应——基础
服务器·网络·fastapi