【CentOS】CentOS-7-x86_64-Minimal-2009 绝对内网环境下部署(离线源码编译安装Nginx、MySQL、Redis、Java(JDK),配置开机自动启动)

在这里插入图片描述
绝对内网挂载本地镜像源,离线源码编译安装Nginx、MySQL、Redis、Java(JDK),配置开机自动启动。

一、挂载本地镜像源

我们常用的操作是直接用VMware添加一个光驱镜像,但这里不能这样做,因为我们只能SSH远程服务器,没有操作云管理的权限。

建议使用以下两款软件完成上传工作
在这里插入图片描述
上传文件列表如下
在这里插入图片描述
loadcentosLocalMirror.sh文件内容如下:

#!/bin/bash

export LANG=en_US.utf8
export LC_ALL=en_US.utf8
echoError() { echo -e $"\e[43;31;5m  "$1"\e[0m"; }
Current_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
JAVA_HOME=$Current_DIR/e-monitor/JDK
ip=$(ip -o route get to 223.5.5.5 | sed -n 's/.*src \([0-9.]\+\).*/\1/p')

# centos7 or redhat7    
mkdir -p /os/iso && mount -t iso9660 $Current_DIR/CentOS-7-x86_64-DVD-2009.iso /os/iso
mkdir -p /etc/yum.repos.d/bak && mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak
cat >/etc/yum.repos.d/local.repo <<EOF
[base]
name = "Centost7 HTTP YUM"
baseurl = file:///os/iso
gpgcheck = 0
enabled = 1
EOF
yum clean all && yum makecache fast >/dev/null 2>&1
echo "loadLocalMirrorSucess!!welcome https://blog.csdn.net/xzzteach"

执行脚本命令,并使用yum install tree 测试(重启后需要再次挂载)

sh loadcentosLocalMirror.sh
yum install tree

在这里插入图片描述

二、获取源码包

所有源码包地址如下:
https://download.csdn.net/download/xzzteach/89696738

在这里插入图片描述

将整个压缩包上传到如下位置并解压
在这里插入图片描述

三、安装常用及依赖工具

#方便服务器维护工具
#目录结构树tree、#文件编辑器vim、#解压缩工具tar、#安装rz上传工具lrzsz、#分区工具fdisk、#编译工具gcc

yum -y install tree vim tar lrzsz fdisk gcc

#编译依赖汇总

yum -y install make git boost

#nginx依赖汇总
#PCRE库用于支持Nginx的URL重写功能、openssl-devel #安装OpenSSL库

yum -y install pcre pcre-devel openssl openssl-devel

#mysql编译依赖汇总

yum -y install -y gcc gcc-c++ make cmake tar openssl openssl-devel ncurses ncurses-devel bison libarchive libtirpc-devel

四、安装Nginx

1. 解压配置

cd /home/WF/linuxSourcePackage/
tar -xzvf nginx-1.24.0.tar.gz 
cd nginx-1.24.0
./configure --prefix=/usr/local/nginx --with-http_ssl_module

2. 编译安装

 make && make install 
 cd /usr/lcoal/nginx/
 tree -L 2  #查看目录结构

3. 配置防火墙

nginx默认80端口,添加到防火墙,永久生效

 firewall-cmd --zone=public --add-port=80/tcp --permanent
 firewall-cmd --reload
 firewall-cmd --list-ports

4. 注册服务

vim /etc/systemd/system/nginx.service

内容如下

[Unit]
Description=nginx service
After=network.target

[Service]
User=root
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
ExecStartPre=/bin/sleep 10

[Install]
WantedBy=multi-user.target

5. 添加代理(此处根据需要,请勿照搬)

vim /usr/local/nginx/conf/nginx.conf

内容如下:

location ^~ /api {
              proxy_set_header Host $host;
              proxy_set_header X-Real-IP $remote_addr;
              proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
              rewrite ^/api/(.*)$ /$1 break;
              proxy_pass http://127.0.0.1:8532;
         }

在这里插入图片描述

6. 配置开机启动

systemctl daemon-reload  # 重新加载systemd守护进程,以便识别新的服务
systemctl enable nginx  # 启用服务,使其在系统启动时自动启动
systemctl start nginx   # 启动服务

浏览器访问IP,如下说明成功了

在这里插入图片描述

五、安装MySQL

1. 检查是否装有mariadb(Centos7.9默认安装)并卸载它

yum list installed | grep mariadb
yum erase mariadb mariadb-server mariadb-libs mariadb-devel -y
find / -name mysql*
rm -rf /usr/local/mysql /usr/local/mysql/bin/mysql
rm -rf /data/mysql/
rm -rf /etc/my.cnf
rm -rf /etc/systemd/system/mysql.service 
rm -rf /etc/systemd/system/mysqld.service

2. 安装net-tools

yum install net-tools

3. 使用离线安装rpm包

cd /home/WF/linuxSourcePackage/mysql-5.7.44-1.el7.x86_64.rpm-bundle
rpm -ivh mysql-community-common*
rpm -ivh mysql-community-libs*
rpm -ivh mysql-community-client*
rpm -ivh mysql-community-server*

在这里插入图片描述

4. 设置mysqld开机启动

systemctl enable mysqld

5. 查看默认密码

grep 'temporary password' /var/log/mysqld.log

在这里插入图片描述

6. 登录mysql

mysql -uroot -p

7. 检查密码策略:

SHOW VARIABLES LIKE 'validate_password%';
SET GLOBAL validate_password_policy = LOW; -- 将密码策略级别设置为LOW

8. 修改密码

alter user root@'localhost'identified by'openEuler@123';

9. 创建用户

CREATE USER 'mashang'@'localhost' IDENTIFIED BY 'LfejfWZzkWeZepfc';

10. 创建数据库

CREATE DATABASE mashang CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

11. 授权数据库

GRANT ALL PRIVILEGES ON mashang.* TO 'mashang'@'%';

-‌ 授权所有权限‌:‌GRANT ALL PRIVILEGES 表示授予所有操作权限。‌
-‌ 指定数据库和表‌:‌ON mashang.* 指定了权限作用于mashang数据库的所有表。‌
-‌ 指定用户和来源‌:‌TO ‘mashang’@‘%’ 指定了权限授予给mashang用户,‌且该用户可以从任何主机(‌由%表示)‌连接。‌

六、安装Redis

1. 解压

cd /home/WF/linuxSourcePackage
tar -xzvf redis-7.2.4.tar.gz
cd redis-7.2.4

2. 编译并安装

make && make install

编译时出现问题时,可以使用make distclean指令清理
直接make install(默认安装到/usr/local/bin目录下),这里我们可以使用以下指令安装到指定目录下

3. 注册服务systemd服务脚本(After=,Requires=请根据实际情况来,请勿照搬)

vim /etc/systemd/system/redis.service

内容如下:

[Unit]
Description=redis-server
After=network.target nginx.service mashang.service
Requires=nginx.service mashang.service
 
[Service]
Type=forking
ExecStart=/usr/local/bin/redis-server
PrivateTmp=true
Restart=on-failure
 
[Install]
WantedBy=multi-user.target

七、配置Java(JDK)

1. 解压并重命名文件夹

cd /home/WF/linuxSourcePackage/
tar -xzvf jdk-8u401-linux-x64.tar.gz
cp -rf jdk1.8.0_401/ /usr/local
cd /usr/local
mv -f jdk1.8.0_401 java

2. 配置环境变量

cp /etc/profile /etc/profile.bak #备份一下文件
vim  /etc/profile

配置环境变量 (“=”前后请勿添加空格,否则加载时会出错)
vim /etc/profile 按 “i” 编辑文件内容,添加完内容后按“Esc”停止编辑,按“:wq”保存并退出
进入/etc/profile文件中,在末尾处添加如下内容:

#set java environment
JAVA_HOME=/usr/local/java
JRE_HOME=$JAVA_HOME/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH

3. 生效配置文件

source /etc/profile
java -version

4. 注册服务脚本(mashang.service请勿照搬):

vim /etc/systemd/system/mashang.service

内容如下:

[Unit]
Description=Mashang Service
After=network.target nginx.service
Requires=nginx.service

[Service]
Type=simple
User=root
Group=root
ExecStart=/usr/local/java/bin/java -Xms1024m -Xmx1024m -jar /usr/local/java/bin/mashang/app.jar --server.port=8532 ----spring.profiles.active=test
[Install]
WantedBy=multi-user.target

5. 配置开机启动

systemctl daemon-reload  # 重新加载systemd守护进程,以便识别新的服务
systemctl enable mashang  # 启用服务,使其在系统启动时自动启动
systemctl start mashang   # 启动服务

上传项目资源

1. 上传java项目资源

在这里插入图片描述

2. 上传nginx项目资源

在这里插入图片描述

九、防火墙配置(根据实际情况-选配)

sudo firewall-cmd --add-port=21/tcp --permanent #ftp
sudo firewall-cmd --add-port=22/tcp --permanent #ssh
sudo firewall-cmd --add-port=80/tcp --permanent #nginx
sudo firewall-cmd --add-port=3306/tcp --permanent #MySQL
sudo firewall-cmd --add-port=6379/tcp --permanent #redis
sudo firewall-cmd --add-port=8532/tcp --permanent #后端java使用
sudo firewall-cmd --reload
firewall-cmd --list-ports

十、项目默认自动启动,手动启动参考如下:

1. 启动nginx

systemctl start nginx

2. 启动mysql

systemctl start mysql

3. 启动java

systemctl start mashang

4. 启动redis

systemctl start redis
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值