? ? ? ? 更多筆記在這里? ?全棧之路: ? https://gitee.com/oldbe/notes???【跳轉到】
????????覺得有用請點個 star?,非常感謝!
現在AI太強大,開發個人產品的門檻和成本太低了,只要你有好的想法都可以很快速的開發一款產品
?1. 獲得服務器
?? ?
服務器最重要的就是穩定還有便宜;
這里推薦 ?雨云,便宜且穩定。我們公司生產環境一直用的也是雨云;
【專屬優惠鏈接,新用戶更便宜】https://www.rainyun.com/NjQ0NjI5_
優惠專享鏈接:雨云 - 新一代云服務提供商
輸入優惠碼【NjQ0NjI5】再減15%
2.連接到云服務器
使用連接工具連接即可
3.配置環境
3.1.Java(運行后端所需)
-
安裝 OpenJDK (以 JDK8 為例)
sudo yum install java-1.8.0-openjdk -y
-
驗證 Java 安裝
java -version
如果顯示 Java 版本信息,則安裝成功
3.2.MySQL數據庫
-
安裝?MySQL
sudo yum install mysql-server -y
-
啟動 MySQL
sudo systemctl start mysqld
-
配置安全選項
sudo mysql_secure_installation
-
登錄 MySQL 并創建數據庫
mysql -u root -p
3.3.Nginx(前端訪問后端需要)
-
安裝 Nginx
sudo yum install nginx -y
-
啟動并檢查 Nginx 服務
sudo systemctl start nginx #啟動 Nginx
sudo systemctl enable nginx #設置自啟動
nginx -v #查看版本
3.4.?Nodejs(構建前端所需)
-
安裝 Node.js
curl -fsSL https://rpm.nodesource.com/setup_18.x | sudo bash -
sudo yum install -y nodejs
-
驗證安裝
node -v
npm -v
4.打包項目
4.1.打包后端項目
mvn clean package
jar 包在 target 目錄下
4.2.打包前端項目
npm run build:prod
Vite 默認會將打包后的靜態資源生成在 dist 文件夾中
5.上傳項目到服務器
5.1.上傳后端項目
- 將?
.jar
?文件上傳到服務器
假設?.jar
?文件路徑為?target/employment.jar
,服務器目標路徑為?/opt/employment/
:
scp target/employment.jar user@your-server-ip:/opt/employment/
將?user
?替換為你的服務器用戶名,your-server-ip
?替換為服務器 IP 地址。
- 確保?
.jar
?文件已經成功上傳到目標路徑?/opt/employment/
5.2.上傳前端項目
- 將前端打包后的?
dist
?目錄上傳到服務器上:
scp -r dist user@your-server-ip:/var/www/html/
此命令會將前端項目的靜態資源上傳到服務器的?/var/www/html/
?目錄,這個目錄是 Nginx 的默認訪問根目錄
6.配置后端服務
6.1.啟動后端應用
- 在服務器上進入后端?
.jar
?文件所在目錄:
cd /opt/employment/
- 啟動后端應用:
java -jar employment.jar
后端服務會啟動并監聽相應的端口,默認情況下是?8080
。可以根據需要修改端口
- 配置后端服務開機自啟動(使用?
systemd
):
創建一個新的?systemd
?服務文件?/etc/systemd/system/employment.service
,內容如下:
[Unit]
Description=Employment System Backend
After=network.target[Service]
User=root
ExecStart=/usr/bin/java -jar /opt/employment/employment.jar
SuccessExitStatus=143
TimeoutStopSec=10
Restart=always[Install]
WantedBy=multi-user.target
6.2.配置防火墻
確保服務器的防火墻允許訪問所需端口(如?8080
?端口):
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --reload
7.配置 Nginx 反向代理
7.1.編輯 Nginx 配置
- 打開 Nginx 配置文件:
sudo vim /etc/nginx/nginx.conf
- 添加反向代理配置,將請求轉發到后端 Java 應用。假設后端應用運行在?
8080
?端口,配置如下:
server {listen 80;server_name your-domain.com; # 替換為你的域名或 IPlocation / {root /var/www/html; # 指向前端項目所在目錄index index.html;}location /api/ {proxy_pass http://localhost:8080; # 將 /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;}
}
- 保存并退出后,檢查 Nginx 配置是否正確:
sudo nginx -t
- 重新加載 Nginx 配置使更改生效:
sudo systemctl reload nginx
8.訪問應用
- 在瀏覽器中訪問你的服務器 IP 或域名,前端頁面應該能夠正常加載
- 后端 API 請求(如?
/api/
)會通過 Nginx 反向代理轉發到后端應用