3c57c167f2
导入 SiteForge Factory V5 基线源码: - FastAPI + SQLite + Docker Compose(Web + Worker)架构 - 四套商业主题 × 14 页面模板(1.1.0,含历史版本快照) - 四种建站模式骨架 + 迁移审计 + 发布门禁 - 52 项 pytest 测试 - 补全计划主文档 docs/superpowers/plans/ Co-Authored-By: Claude Code <noreply@anthropic.com>
20 lines
973 B
Python
20 lines
973 B
Python
"""Generate a local .env using only Docker's Python image (no host Python needed)."""
|
|
import os
|
|
import secrets
|
|
from pathlib import Path
|
|
|
|
root=Path(__file__).resolve().parent.parent
|
|
config=root/'.env'
|
|
if config.exists():
|
|
print('已存在 .env:为了防止覆盖现有密码和密钥,本次不做修改。')
|
|
raise SystemExit(0)
|
|
password=secrets.token_urlsafe(24)
|
|
secret=secrets.token_urlsafe(48)
|
|
config.write_text(f'''# SiteForge Web Docker v0.3 - 不要上传至代码仓库\nSITEFORGE_PORT=8787\nSITEFORGE_ADMIN_PASSWORD={password}\nSITEFORGE_SESSION_SECRET={secret}\nSITEFORGE_COOKIE_SECURE=false\nSITEFORGE_DOMAIN=siteforge.example.com\n''', encoding='utf-8')
|
|
try:os.chmod(config,0o600)
|
|
except OSError:pass
|
|
print('SiteForge 已生成 .env 配置。')
|
|
print('首次登录管理员密码:'+password)
|
|
print('请将密码保存在安全的位置,忘记后可编辑 .env 的密码并重启容器。')
|
|
print('本机启动命令:docker compose up -d --build')
|