初始化提交,包含完整的邮件系统代码
This commit is contained in:
35
start.sh
Normal file
35
start.sh
Normal file
@@ -0,0 +1,35 @@
|
||||
#!/bin/bash
|
||||
|
||||
# 创建必要的目录
|
||||
mkdir -p logs email_data db
|
||||
|
||||
# 检查环境变量文件是否存在,不存在则创建
|
||||
if [ ! -f .env ]; then
|
||||
echo "创建.env文件..."
|
||||
cat > .env << EOF
|
||||
FLASK_ENV=production
|
||||
SECRET_KEY=$(openssl rand -hex 16)
|
||||
MAIL_DOMAINS=example.com,mail.example.com
|
||||
EOF
|
||||
echo ".env文件已创建"
|
||||
fi
|
||||
|
||||
# 初始化数据库
|
||||
echo "初始化数据库..."
|
||||
python -c "from app.models import init_db; init_db()"
|
||||
|
||||
# 启动服务
|
||||
echo "启动服务..."
|
||||
if [ "$1" == "docker" ]; then
|
||||
# 使用Docker启动
|
||||
docker-compose up -d
|
||||
echo "服务已在Docker中启动"
|
||||
else
|
||||
# 直接启动
|
||||
echo "直接启动应用..."
|
||||
# 检查是否以root权限运行(25端口需要)
|
||||
if [ "$(id -u)" -ne 0 ] && [ "$SMTP_PORT" -lt 1024 ]; then
|
||||
echo "警告: 在端口 $SMTP_PORT 运行SMTP服务需要root权限"
|
||||
fi
|
||||
python run.py --host 0.0.0.0 --port 5000 --smtp-port ${SMTP_PORT:-25}
|
||||
fi
|
||||
Reference in New Issue
Block a user