环境管理
# 创建虚拟环境
python -m venv venv
# 激活 (PowerShell)
.\venv\Scripts\Activate.ps1
# 停用
deactivate
# 删除虚拟环境
Remove-Item -Recurse -Force venv
依赖管理
# 安装依赖
pip install fastapi uvicorn python-dotenv
# 生成 requirements.txt
pip freeze > requirements.txt
# 从文件安装
pip install -r requirements.txt
# 查看过时包
pip list --outdated
# 预览更新 (dry-run)
pip install --upgrade --dry-run package-name
# 批量更新所有包
pip install --upgrade $(pip list --outdated --format=columns | Select-Object -Skip 2 | ForEach-Object { $_.Split()[0] })
# 安全更新 (仅补丁版本)
pip install --upgrade --upgrade-strategy only-if-needed package-name
依赖更新工具
# 安装 pip-review
pip install pip-review
# 交互式更新 (逐个确认)
pip-review --interactive
# 自动更新所有
pip-review --auto
# 本地更新 (仅 requirements.txt 中的包)
pip-review --local
# 安装 pip-audit (安全审计)
pip install pip-audit
# 检查安全漏洞
pip-audit
镜像源配置
# 临时使用镜像
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple fastapi
# 永久配置 (Windows)
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
# 查看当前配置
pip config list
# 常用国内镜像
# 清华: https://pypi.tuna.tsinghua.edu.cn/simple
# 阿里: https://mirrors.aliyun.com/pypi/simple
# 腾讯: https://mirrors.cloud.tencent.com/pypi/simple
# 华为: https://repo.huaweicloud.com/repository/pypi/simple
# 中科大: https://pypi.mirrors.ustc.edu.cn/simple
# 恢复官方源
pip config unset global.index-url
运行应用
# 开发模式 (热重载)
uvicorn app.main:app --reload
# 指定端口/主机
uvicorn app.main:app --host 0.0.0.0 --port 8000
# 生产模式 (多进程)
uvicorn app.main:app --host 0.0.0.0 --port 8000 --workers 4
# 后台运行
Start-Process -NoNewWindow uvicorn "app.main:app --host 0.0.0.0 --port 8000"
测试
# 运行测试
pytest tests/ -v
# 带覆盖率
pytest tests/ --cov=app --cov-report=html
数据库迁移 (Alembic)
# 初始化
alembic init alembic
# 生成迁移
alembic revision --autogenerate -m "描述"
# 执行迁移
alembic upgrade head
# 回滚
alembic downgrade -1
Docker
# 构建
docker build -t fastapi-app .
# 运行
docker run -p 8000:8000 fastapi-app
# Compose
docker-compose up -d
docker-compose down
端口管理
# 查看占用端口
netstat -ano | findstr :8000
# 杀进程
taskkill /PID <PID> /F
常见问题
# 执行策略问题
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
# 清理缓存
pip cache purge
# 重新安装 pip
python -m pip install --upgrade pip
评论区
发表新的留言
您可以留言提出您的疑问或建议。
您的留言得到回复时,会通过您填写的邮箱提醒您。