在实际项目部署运维过程中,如果是云服务器,基本安装项目所需的依赖环境都是通过yum联网拉取网络资源实现自动化安装的;但是对于一些特殊场合,在没有外部网络的情况下,就无法使用yum命令联网操作,只能通过编译安装的方式来处理解决。
本文案主要讲解centos7.9离线部署java项目所需的依赖环境,所有依赖的软件均通过编译安装的方式来解决,希望对大家有所帮助。
一. 首先确定服务器的系统版本以及相关服务器配置
##系统内核
uname -r
##系统版本
cat /etc/redhat-release
##cpu信息
lscpu
##其他信息可通过top简单查看
top
二.下载对应系统版本的安装镜像包
为什么要下载镜像包?因为安装web项目的依赖环境需要其他一些依赖文件,在对应的Packages 文件夹内都有相关的文件,上传安装即可解决对应问题。
1.镜像下载网站
- 国内大学共建镜像库(你正常学习用的都有,包括所有子站点):https://mirrorz.org/site
- 推荐使用的站点(阿里巴巴,网易,浙大,兰大等)
阿里: https://developer.aliyun.com/mirror/
网易:https://mirrors.163.com/
浙大:https://mirrors.zju.edu.cn/
兰大:https://mirror.lzu.edu.cn/
2.具体下载操作参看如下:
按照上面的网站,找到对应系统的镜像包,下载全量IOS镜像文件即可。
然后将iso文件解压后,找到Packages文件夹,打开可以看到有大量的rpm文件。
三.离线安装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_password
datadir=/var/lib/mysql
###datadir=/data/mysql
socket=/var/lib/mysql/mysql.sock
log-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