Files
YG_FT_Platform/create_venv.sh
WIN-JHFT4D3SIVT\caoxiaozhu 40ca89fad5 1. 修改了应用端口的问题
2. 增加了创建虚拟环境的脚本和删除虚拟环境的脚本
2026-01-26 14:33:00 +08:00

125 lines
3.5 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/bin/bash
# YG_FT_Base 虚拟环境创建脚本 (Linux/Mac/WSL)
# 使用方法: bash create_venv.sh 或 ./create_venv.sh
# 自动修复脚本换行符(如果是从 Windows 传来的文件)
if grep -q $'\r' "$0"; then
echo "检测到 Windows 换行符,自动修复中..."
sed -i 's/\r$//' "$0"
echo "修复完成,重新执行脚本..."
exec "$0"
fi
echo "===================================="
echo "YG_FT_Base 虚拟环境创建脚本"
echo "===================================="
echo ""
# 设置虚拟环境名称
VENV_NAME="B_venv"
# 检查 Python 版本
echo "检查 Python 版本..."
if command -v python3 &> /dev/null; then
PYTHON_CMD="python3"
python3 --version
elif command -v python &> /dev/null; then
PYTHON_CMD="python"
python --version
else
echo "错误: 未找到 Python请先安装 Python 3.10 或更高版本。"
exit 1
fi
# 检查并安装 python3-venv仅限 Debian/Ubuntu 系统)
echo ""
echo "检查 python3-venv..."
if [ -f /etc/debian_version ]; then
echo "检测到 Debian/Ubuntu 系统"
if ! dpkg -l | grep -q python3-venv; then
echo "python3-venv 未安装,尝试安装..."
if [ -x "$(command -v apt)" ]; then
apt update && apt install -y python3-venv python3-pip
if [ $? -ne 0 ]; then
echo "警告: 安装 python3-venv 失败,请手动运行:"
echo " apt install python3-venv python3-pip"
echo "然后重新运行此脚本。"
exit 1
fi
echo "python3-venv 安装成功!"
else
echo "错误: 未找到 apt 包管理器,请手动安装 python3-venv。"
exit 1
fi
else
echo "python3-venv 已安装。"
fi
elif [ -f /etc/redhat-release ]; then
echo "检测到 RedHat/CentOS/Fedora 系统"
if ! rpm -qa | grep -q python3-virtualenv; then
echo "python3-virtualenv 未安装,尝试安装..."
if [ -x "$(command -v yum)" ]; then
yum install -y python3-virtualenv python3-pip
elif [ -x "$(command -v dnf)" ]; then
dnf install -y python3-virtualenv python3-pip
fi
fi
fi
# 检查是否已存在虚拟环境
if [ -d "$VENV_NAME" ]; then
echo "警告: 虚拟环境 '$VENV_NAME' 已存在!"
read -p "是否删除并重新创建? (y/n): " choice
if [[ "$choice" == "y" || "$choice" == "Y" ]]; then
echo "删除旧虚拟环境..."
rm -rf "$VENV_NAME"
else
echo "已取消操作。"
exit 0
fi
fi
# 创建虚拟环境
echo ""
echo "创建虚拟环境..."
$PYTHON_CMD -m venv "$VENV_NAME"
if [ $? -ne 0 ]; then
echo "错误: 创建虚拟环境失败!"
exit 1
fi
echo "虚拟环境创建成功!"
# 激活虚拟环境并升级 pip
echo ""
echo "激活虚拟环境并升级 pip..."
source "$VENV_NAME/bin/activate"
python -m pip install --upgrade pip setuptools wheel
echo "pip 升级完成!"
# 安装依赖
echo ""
echo "安装项目依赖..."
if [ -f "requirements.txt" ]; then
pip install -r requirements.txt
if [ $? -eq 0 ]; then
echo "依赖安装成功!"
else
echo "警告: 依赖安装过程中出现一些问题。"
fi
else
echo "未找到 requirements.txt跳过依赖安装。"
fi
# 完成信息
echo ""
echo "===================================="
echo "虚拟环境创建完成!"
echo "===================================="
echo ""
echo "激活虚拟环境:"
echo " source $VENV_NAME/bin/activate"
echo ""
echo "运行项目:"
echo " python src/main.py"
echo ""