在实际项目部署运维过程中,如果是云服务器,基本安装项目所需的依赖环境都是通过yum联网拉取网络资源实现自动化安装的;但是对于一些特殊场合,在没有外部网络的情况下,就无法使用yum命令联网操作,只能通过编译安装的方式来处理解决。
本文案主要讲解centos7.9离线部署java项目所需的依赖环境,所有依赖的软件均通过编译安装的方式来解决,希望对大家有所帮助。
一. 首先确定服务器的系统版本以及相关服务器配置
##系统内核
uname -r
##系统版本
cat /etc/redhat-release
##cpu信息
lscpu
##其他信息可通过top简单查看
top
二.下载对应系统版本的安装镜像包
为什么要下载镜像包?因为安装web项目的依赖环境需要其他一些依赖文件,在对应的Packages 文件夹内都有相关的文件,上传安装即可解决对应问题。
1.镜像下载网站
- 国内大学共建镜像库(你正常学习用的都有,包括所有子站点):https://mirrorz.org/site
- 推荐使用的站点(阿里巴巴,网易,浙大,兰大等)
- 也可以使用镜像库提供的packages包,下载需要的编译文件,如https://mirrors.aliyun.com/centos/7/os/x86_64/Packages/
阿里: https://developer.aliyun.com/mirror/
网易:https://mirrors.163.com/
浙大:https://mirrors.zju.edu.cn/
兰大:https://mirror.lzu.edu.cn/
2.具体下载操作参看如下:
按照上面的网站,找到对应系统的镜像包,下载全量IOS镜像文件即可。
然后将iso文件解压后,找到Packages文件夹,打开可以看到有大量的rpm文件。
三.安装运维过程中常见的操作命令
1.rpm安装卸载
###rpm安装
rpm -Uvh *.rpm --nodeps --force
###检查是否安装
rpm -qa|grep mariadb
###rpm卸载
rpm -e --nodeps mariadb-libs
2.防火墙操作
###防火墙目前的信息,包括开放的端口
firewall-cmd --list-all
###将80端口加入允许访问
firewall-cmd --zone=public --add-port=80/tcp --permanent
###重置防火墙
firewall-cmd --reload
3.解压缩相关命令
###解压.tar文件
tar -zxvf nginx-1.20.2.tar.gz
###解压.zip文件
unzip test.zip
4.查看服务信息,文件位置或者kill进程
###查看服务信息或者进程
ps -ef|grep nginx
###查找文件位置信息
whereis nginx
###杀死27108进程
kill -9 27108
其他相关命令持续更新中。。。
四.离线安装jdk1.8
详细操作请参看如下链接:centos7.9离线安装配置jdk1.8
五.离线安装并配置nginx1.20.2
1.需要关联的rpm文件,全部来自步骤二中的iso镜像包内
2.详细操作请参看如下链接:
centos7.9离线安装nginx1.20.2
CentOS7.9离线安装配置nginx,同时设置前端项目访问和开机自启动
六. 离线安装并配置redis5.0.9
1.需要关联的rpm文件(基于nginx安装成功的基础上,或者看下面的链接参考)
2. 详细操作请参看如下链接
centos7.9离线安装配置redis5.0.9
七. 离线安装并配置mysql8.0.15
1.需要关联的rpm文件(基于redis安装成功的基础上,或者看下面的链接参考)
2.详细操作请参看如下链接:
CentOS7.9安装mysql8.0-CSDN博客
CentOS7.9通过rpm离线安装mysql8.0_centos7.9 离线安装mysql8.0-CSDN博客
3.mysql8.0配置需要注意的点
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/8.0/en/server-configuration-defaults.html[mysqld]
###解决mysql8远程连接问题
bind-address=0.0.0.0
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
# Remove the leading "# " to disable binary logging
# Binary logging captures changes between backups and is enabled by
# default. It's default setting is log_bin=binlog
# disable_log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
#
# Remove leading # to revert to previous value for default_authentication_plugin,
# this will increase compatibility with older clients. For background, see:
# https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_default_authentication_plugin
# default-authentication-plugin=mysql_native_passworddatadir=/var/lib/mysql
###datadir=/data/mysql
socket=/var/lib/mysql/mysql.socklog-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid####解决mysql8分组异常问题
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
八. 离线安装unzip(此应用无需无需关联其他rpm文件)
方便对.zip格式的文件进行操作,详细使用请参看如下链接:
centos7.9离线安装unzip
九.jar项目启动运行操作
####使用系统配置的日志并后台运行
nohup java -jar ./test.jar &
###自定义打印日志位置并设置当前的配置信息
nohup java -jar ./test.jar --spring.profiles.active=pro -Dlogsdir=logs test.jar>./test8808-202400101.log 2>&1 &