Java 项目 Linux 云服务器部署指南
项目部署前需准备一台云服务器。
基于 Linux 云服务器部署 Java 项目的完整流程。主要步骤包括:安装 JDK 和 MySQL 环境,配置多平台 application 文件,统一数据库名称,使用 lrzsz 工具上传项目文件及 SQL 脚本,调整日志路径,通过 Maven 打包 JAR 文件,使用 nohup 后台运行程序,并在安全组中开放相应端口。最终通过浏览器访问验证部署结果。

项目部署前需准备一台云服务器。

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
查找任何按下的键的javascript键代码、代码、位置和修饰符。 在线工具,Keycode 信息在线工具,online
JavaScript 字符串转义/反转义;Java 风格 \uXXXX(Native2Ascii)编码与解码。 在线工具,Escape 与 Native 编解码在线工具,online
使用 Prettier 在浏览器内格式化 JavaScript 或 HTML 片段。 在线工具,JavaScript / HTML 格式化在线工具,online
Terser 压缩、变量名混淆,或 javascript-obfuscator 高强度混淆(体积会增大)。 在线工具,JavaScript 压缩与混淆在线工具,online
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online
首先在云服务器上安装 JDK,这是运行 Java 程序的基础(可以选择自己需要的版本)
sudo apt install openjdk-17-jdk -y
安装完成后,可通过 java -version 命令验证是否安装成功。
apt (Advanced Packaging Tool) 是 Linux 软件包管理工具,用于在 Ubuntu、Debian 和相关发行版上管理软件包。大多数 apt 命令必须以具有 sudo 权限的用户身份运行。
更新软件包数据库:
sudo apt-get update
# 查找安装包
apt list | grep "mysql-server"
# 安装 mysql
sudo apt install mysql-server
sudo systemctl status mysql
默认的 MySQL 设置是不安全的,安装提供了一个安全脚本,用于解决不太安全的默认选项。
sudo mysql_secure_installation
一路 Y 即可,期间需设置密码。
安装成功后,可以登录 MySQL 验证一下(输入密码时不显示密码,输错可以重新输)。
以下以项目里的 application-XXX.yml 为例针对不同平台创建不同的配置文件,要求名字为 application-XXX.yml 或者 application-XXX.properties。
在主配置文件中指定配置文件,并删除数据库相关配置(事前先将数据库配置复制到其他配置文件)。
刷新 Maven。
重要:请确保项目中的数据库名称与云服务器上实际创建的数据库名称一致。
yml 文件中的数据库信息要与云服务器上的一致。
如果要将本地文件上传到服务器上就要先安装 lrzsz。
sudo apt-get install lrzsz
在服务器上创建用于存放项目文件的文件夹。
mkdir -p /opt/project
使用终端工具或图形化工具将本地文件上传至服务器指定目录。
上传完成。
便于查询可以更改文件名。
将项目所需的数据库结构及初始数据导入云服务器的数据库中。
mysql -u 用户名 -p 数据库名 < 文件路径.sql
根据服务器实际路径,调整日志配置文件中的日志输出路径,避免出现权限不足或路径不存在的问题。
在本地使用 Maven 构建工具将项目打包为可执行的 JAR 文件。
将打包好的 JAR 文件上传至服务器指定目录。
上传完成后,建议将文件重命名为便于识别的名称。
使用 nohup 命令在后台启动 JAR 包,并将日志输出到指定文件:
nohup java -jar app.jar > app.log 2>&1 &
ps -ef | grep java
netstat -tuln | grep 端口号
在云服务器控制台的安全组中,开放应用所需的端口,确保外网可以访问。
完成以上所有步骤后,在浏览器中访问应用地址(例如 http://服务器 IP:端口号),如果页面正常显示,说明项目已成功部署并运行。