您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
# CentOS系统的Java项目运行环境搭建步骤
## 目录
1. [环境准备](#环境准备)
2. [JDK安装与配置](#jdk安装与配置)
3. [Tomcat服务器部署](#tomcat服务器部署)
4. [MySQL数据库安装](#mysql数据库安装)
5. [Redis缓存服务配置](#redis缓存服务配置)
6. [Nginx反向代理设置](#nginx反向代理设置)
7. [防火墙与安全配置](#防火墙与安全配置)
8. [项目部署与启动](#项目部署与启动)
9. [常见问题排查](#常见问题排查)
10. [环境优化建议](#环境优化建议)
---
## 环境准备
### 1.1 系统要求
- CentOS 7/8 最小化安装(推荐)
- 2核CPU/4GB内存/50GB硬盘(生产环境建议更高配置)
- 稳定的网络连接
### 1.2 基础工具安装
```bash
# 更新系统
sudo yum update -y
# 安装常用工具
sudo yum install -y wget curl vim git unzip net-tools
# 创建专用用户(示例)
sudo adduser deploy
sudo passwd deploy
sudo visudo
# 在文件中添加:
deploy ALL=(ALL) NOPASSWD:ALL
# 查看可用版本
yum list java-*-openjdk
# 安装JDK 11(推荐LTS版本)
sudo yum install -y java-11-openjdk-devel
# 验证安装
java -version
javac -version
# 查找JDK安装路径
sudo alternatives --config java
# 编辑/etc/profile
sudo vim /etc/profile
# 添加以下内容
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.xx.x-x.el7_9.x86_64
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
# 使配置生效
source /etc/profile
# 下载Tomcat 9
wget https://downloads.apache.org/tomcat/tomcat-9/v9.0.xx/bin/apache-tomcat-9.0.xx.tar.gz
# 解压到/opt目录
sudo tar -zxvf apache-tomcat-9.0.xx.tar.gz -C /opt
sudo ln -s /opt/apache-tomcat-9.0.xx /opt/tomcat
# 创建systemd服务文件
sudo vim /etc/systemd/system/tomcat.service
[Unit]
Description=Apache Tomcat
After=network.target
[Service]
User=deploy
Group=deploy
Environment="CATALINA_BASE=/opt/tomcat"
Environment="CATALINA_HOME=/opt/tomcat"
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
Restart=on-failure
[Install]
WantedBy=multi-user.target
# 启动服务
sudo systemctl daemon-reload
sudo systemctl enable tomcat
sudo systemctl start tomcat
# 添加MySQL仓库
sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
# 安装服务
sudo yum install -y mysql-community-server
# 启动服务
sudo systemctl start mysqld
sudo systemctl enable mysqld
# 获取临时密码
sudo grep 'temporary password' /var/log/mysqld.log
# 运行安全脚本
sudo mysql_secure_installation
# 创建项目数据库
mysql -u root -p
CREATE DATABASE app_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'app_user'@'%' IDENTIFIED BY 'StrongPassword123!';
GRANT ALL PRIVILEGES ON app_db.* TO 'app_user'@'%';
FLUSH PRIVILEGES;
# 安装EPEL仓库
sudo yum install -y epel-release
# 安装Redis
sudo yum install -y redis
# 启动服务
sudo systemctl start redis
sudo systemctl enable redis
sudo vim /etc/redis.conf
# 修改关键参数
maxmemory 2gb
maxmemory-policy allkeys-lru
tcp-keepalive 60
# 添加Nginx仓库
sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
# 安装Nginx
sudo yum install -y nginx
# 启动服务
sudo systemctl start nginx
sudo systemctl enable nginx
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
# 开放必要端口
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp
sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --reload
# 临时禁用(不推荐)
sudo setenforce 0
# 或配置策略
sudo semanage port -a -t http_port_t -p tcp 8080
# 上传项目文件
scp target/app.war deploy@server:/tmp/
# 部署到Tomcat
sudo mv /tmp/app.war /opt/tomcat/webapps/
sudo chown deploy:deploy /opt/tomcat/webapps/app.war
# 创建启动脚本
vim /opt/app/start.sh
#!/bin/bash
nohup java -jar /opt/app/application.jar --spring.profiles.active=prod > /var/log/app.log 2>&1 &
# 设置执行权限
chmod +x /opt/app/start.sh
sudo netstat -tulnp | grep 8080
# Tomcat日志
tail -f /opt/tomcat/logs/catalina.out
# 系统日志
journalctl -xe
# 修改Tomcat启动参数
vim /opt/tomcat/bin/setenv.sh
export CATALINA_OPTS="-Xms2g -Xmx2g -XX:+UseG1GC"
# application.properties示例
spring.datasource.hikari.maximum-pool-size=20
spring.datasource.hikari.connection-timeout=30000
注:本文档约3000字,完整8100字版本需扩展以下内容: 1. 各服务的详细参数说明 2. 备份与恢复方案 3. 监控方案(Prometheus+Grafana) 4. 负载均衡配置 5. HTTPS证书配置 6. 自动化部署脚本 7. 各组件版本兼容性矩阵 8. 性能测试方法 9. 安全加固检查清单 10. 容器化部署方案对比 “`
如需完整8100字版本,建议在上述框架基础上: 1. 每个章节增加原理说明 2. 添加实际案例演示 3. 补充故障场景处理方案 4. 增加配置参数详解表格 5. 添加性能优化数据对比 6. 补充安全审计相关内容 7. 增加自动化运维方案 8. 添加可视化监控配置步骤
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。