mirror of https://github.com/jeecgboot/jeecg-boot
54 lines
1.6 KiB
Bash
54 lines
1.6 KiB
Bash
#!/bin/bash
|
||
# JEECG Boot 一键启动脚本 (Linux Bash 版)
|
||
|
||
set -e # 遇到错误时退出脚本
|
||
|
||
# 检查必要工具
|
||
echo "[1/5] 检查必要工具..."
|
||
command -v docker >/dev/null 2>&1 || { echo "[错误] 未安装 Docker,请先安装 Docker"; exit 1; }
|
||
command -v docker-compose >/dev/null 2>&1 || { echo "[错误] 未安装 docker-compose"; exit 1; }
|
||
command -v mvn >/dev/null 2>&1 || { echo "[错误] 未安装 Maven"; exit 1; }
|
||
command -v pnpm >/dev/null 2>&1 || { echo "[错误] 未安装 pnpm"; exit 1; }
|
||
|
||
# 设置 hosts 文件
|
||
echo "[2/5] 设置 hosts 文件..."
|
||
entry1="127.0.0.1 jeecg-boot-gateway"
|
||
entry2="127.0.0.1 jeecg-boot-mysql"
|
||
hostsFile="/etc/hosts"
|
||
|
||
# 检查第一个条目是否存在
|
||
if ! grep -q "$entry1" "$hostsFile"; then
|
||
echo "$entry1" | sudo tee -a "$hostsFile" > /dev/null
|
||
echo "已添加: $entry1"
|
||
else
|
||
echo "已存在: $entry1"
|
||
fi
|
||
|
||
# 检查第二个条目是否存在
|
||
if ! grep -q "$entry2" "$hostsFile"; then
|
||
echo "$entry2" | sudo tee -a "$hostsFile" > /dev/null
|
||
echo "已添加: $entry2"
|
||
else
|
||
echo "已存在: $entry2"
|
||
fi
|
||
|
||
echo "[3/5] 编译后端项目..."
|
||
cd jeecg-boot
|
||
mvn clean install -Pdev,SpringCloud
|
||
|
||
echo "[4/5] 编译前端项目..."
|
||
cd ../jeecgboot-vue3
|
||
pnpm install
|
||
pnpm run build:dockercloud
|
||
cd ..
|
||
|
||
echo "[5/5] 启动Docker容器..."
|
||
docker-compose -f docker-compose-cloud.yml up -d
|
||
|
||
echo
|
||
echo "========================================"
|
||
echo " JEECG Boot 启动成功 (请等待1分钟,待所有容器启动成功)"
|
||
echo "========================================"
|
||
echo "前端访问: http://localhost"
|
||
echo "后端API: http://localhost:9999"
|
||
echo |