安装需求
Java 环境,目前 Halo 最低需要 JRE 17 的环境。
MySQL 5.7+数据库,官方文档使用MariaDB、PostgreSQL也是可以的。
操作系统 腾讯云 OpenCloudOS 8(兼容CentOS8,并自带JDK17)
系统环境搭建
1.安装JDK17
在安装新软件包之前,有必要对Linux系统进行更新。这将确保系统拥有已安装软件包的最新版本,并刷新APT索引缓存,使其能够下载和安装最新的应用程序。
# 更新系统软件包
sudo yum update -y
# 查看系统中的JDK软件包
yum search java|grep openjdk
# 安装OpenJDK17
sudo yum install java-17-openjdk-devel.x86_64
# 查看版本信息
java -version
2.安装MySQL数据库
# 查看系统内已存在的Mariadb,并将其卸载
[root@VM-0-14-opencloudos ~]# rpm -qa | grep mariadb
mariadb-connector-c-3.1.11-2.oc8.1.x86_64
mariadb-connector-c-config-3.1.11-2.oc8.1.noarch
# 将Mariadb卸载
[root@VM-0-14-opencloudos ~]# rpm -e --nodeps mariadb-connector-c-3.1.11-2.oc8.1.x86_64
[root@VM-0-14-opencloudos ~]# rpm -e --nodeps mariadb-connector-c-config-3.1.11-2.oc8.1.noarch
# 下载MySQL数据库包
[root@VM-0-14-opencloudos ~]# wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
# 添加数据库包
[root@VM-0-14-opencloudos ~]# sudo yum localinstall mysql57-community-release-el7-11.noarch.rpm
# 检查mysql源是否安装成功
[root@VM-0-14-opencloudos ~]# yum repolist enabled | grep "mysql..community."
mysql-connectors-community MySQL Connectors Community
mysql-tools-community MySQL Tools Community
mysql57-community MySQL 5.7 Community Server
# 禁用Mysql模块
[root@VM-0-14-opencloudos ~]# yum module disable mysql
# 安装mysql-community-server,注意:在yum install 版本后面加上 --nogpgcheck,即可绕过GPG验证成功安装
# --nogpgcheck 参数指定不检查数字签名 否则执行 sudo rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY* 安装现有的 gpg 公钥
[root@VM-0-14-opencloudos ~]# yum install mysql-community-server --nogpgcheck
# 查看MYSQL版本信息
[root@VM-0-14-opencloudos ~]# mysql --version
mysql Ver 14.14 Distrib 5.7.44, for Linux (x86_64) using EditLine wrapper
# MYSQL 数据库的一些常规操作
# 启动
systemctl start mysqld.service
# 停止
systemctl stop mysqld.service
# 重启
systemctl restart mysqld.service
# 查看状态
systemctl status mysqld.service
# 设置开机自启动
systemctl enable mysqld.service
# 停止开机自启动
systemctl disable mysqld.service
# 查看临时密码
grep 'temporary password' /var/log/mysqld.log
# 修改密码 首先执行 vim /etc/my.cnf 命令进入mysql配置文件,在文件中添加 skip-grant-tables 后保存退出
# 重启
systemctl restart mysqld.service
# 登录mysql 登录后填写刚才查看的临时密码
mysql -uroot -p
# 登录mysql后,修改mysql密码
update mysql.user set authentication_string=password('12345678') where user='root' ;
# 退出mysql数据库
exit
# 使用新密码登录
mysql -uroot -p12345678
# 创建halo数据库
create database halo character set utf8mb4 collate utf8mb4_bin;
# 查看数据库
show databases;
安装Halo系统
参见 halo官方文档
安装Nginx,配置域名访问
# 腾讯云 OpenCloudOS 8 中自带Nginx包,通过yum直接安装
sudo yum install -y nginx
# 设置开机NGINX自启动
sudo systemctl enable nginx
# 禁用开机自启动NGINX服务器
sudo systemctl disable nginx
# 启动NGINX
sudo systemctl start nginx
# 使用status命令确保正确启动了NGINX
sudo systemctl status nginx
# 管理NGINX服务器
# 检查NGINX的状态,运行以下命令
sudo systemctl status nginx
# 停止NGINX服务器
sudo systemctl stop nginx
# 重新启动
sudo systemctl start nginx
# 如果对NGINX服务器进行了一些修改,则可以重新加载它而不必停止并重新启动它
sudo systemctl reload nginx
修改服务器块,实现反向代理
NGINX可以处理自定义配置文件以存储许多不同的网站,配置文件在 /etc/nginx 目录下,编辑配置文件设置反向代理
# 编辑配置文件
vi /etc/nginx nginx.conf
# 检查配置文件
nginx -t
upstream halo {
server 127.0.0.1:8090;
}
server {
# listen 80 default_server;
# listen [::]:80 default_server;
# server_name _;
listen 80;
listen [::]:80;
server_name cherishspring.cn www.cherishspring.cn actool.cc www.actool.cc;
client_max_body_size 1024m;
root /usr/share/nginx/html;
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
location / {
proxy_pass http://halo;
proxy_set_header HOST $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}