安装chocolatey、安装make、安装task以及使用make和task启动python项目
·
安装chocolatey
https://blog.csdn.net/xutongbao/article/details/120743540
安装make
choco install make

使用make启动python项目

Makefile
.PHONY: dev start prod test clean install
# 开发环境启动(支持热重载)
dev:
@set PYTHONIOENCODING=utf-8 && set ENV=development && poetry run uvicorn app:app --reload --host 0.0.0.0 --port 5000
# 生产环境启动
prod:
@set ENV=production && poetry run python app.py
# 启动(生产环境)
start: prod
# 运行测试
test:
@poetry run pytest
# 清理缓存
clean:
@poetry run python -c "import redis; redis.Redis(host='127.0.0.1', port=6379).flushdb(); print('Redis缓存已清除')"
@echo 清理Python缓存...
@for /d /r . %%d in (__pycache__) do @if exist "%%d" rd /s /q "%%d"
@for /r . %%f in (*.pyc) do @if exist "%%f" del /q "%%f"
# 安装依赖
install:
@poetry install
# 查看帮助
help:
@echo 可用命令:
@echo make dev - 开发环境启动(支持热重载)
@echo make prod - 生产环境启动
@echo make test - 运行测试
@echo make clean - 清理缓存
@echo make install - 安装依赖
安装task
choco install go-task
使用task启动

Taskfile.yml
version: '3'
vars:
PYTHON: poetry run python
UVICORN: poetry run uvicorn
tasks:
dev:
desc: 启动开发服务器(支持热重载)
cmds:
- cmd /c "set PYTHONIOENCODING=utf-8 && set ENV=development && {{.UVICORN}} app:app --reload --host 0.0.0.0 --port 5000"
prod:
desc: 启动生产服务器
cmds:
- cmd /c "set ENV=production && {{.PYTHON}} app.py"
start:
desc: 启动服务(生产环境)
cmds:
- task: prod
install:
desc: 安装依赖
cmds:
- poetry install
clean:
desc: 清理缓存
cmds:
- redis-cli FLUSHDB
- echo "Redis缓存已清除"
test:
desc: 运行测试
cmds:
- poetry run pytest
help:
desc: 显示帮助信息
cmds:
- task --list
更多推荐



所有评论(0)