update readme
Mini-12306 -- app //主要接口业务代码 ---- models //定义了数据库表结构与抽象类方法 -- logs //日志存储 -- migrations //执行迁移后的数据库版本文件 -- presenter //渲染文件,用于数据序列化 -- utils //工具包 ---- response.py //定义返回数据结构及定义状态码 -- Dockerfile docker容器化文件 -- docker-compose.yml 容器编排文件
cd 12306mini_python pip config set global.index-url http://mirrors.aliyun.com/pypi/simple pip config set install.trusted-host mirrors.aliyun.com pip install -r requirements.txt
根目录下的config.py文件中 SQLALCHEMY_DATABASE_URI 是定义项目连接数据库的地址(包括数据库账号、密码、名称)。 连接数据库的密码及数据库均可以自行设定。
在项目的根目录下执行下列命令,此命令会将数据表生成。
flask db upgrade
flask run myapp.py
找一台Ubuntu服务器,安装docker及docker-compose
在服务器上创建日志文件存储位置(该文件用于 docker-compose 中 volumes 关联)
mkdir /var/log/mini12306_python
构建容器
docker-compose build
你可能会遇到build失败的问题。
因为国内的原因无法正常自动下载 postgres 和 redis_alpine 这两个软件。
解决方案如下: 下载此链接中两个docker软件包至服务器: postgres_15.tar redis_alpine.tar
https://pan.baidu.com/s/1qMRtQ0Fhy7r5L_58RHe5Fw?pwd=vu3c 提取码: vu3c
可以将文件先下载到本机,然后使用scp命令将文件上传至服务器。
文件上传至服务后,cd至文件所在的目录,然后运行下列指令:
docker load < postgres_15.tar docker load < postgres_15.tar 然后再执行 docker-compose build
运行容器
docker-compose run --rm python flask db upgrade docker-compose up -d
首先,初始化 Alembic 目录(migrations/ 文件夹):
flask db init
当你对模型进行了更改(如添加新表或修改现有表的结构),你可以生成迁移脚本:
flask db migrate -m "Initial migration"
这将根据你定义的模型生成迁移脚本。
执行迁移
pdb.set_trace()
©Copyright 2023 CCF 开源发展委员会 Powered by Trustie& IntelliDE 京ICP备13000930号
目录结构说明
开发环境安装
根目录下的config.py文件中 SQLALCHEMY_DATABASE_URI 是定义项目连接数据库的地址(包括数据库账号、密码、名称)。 连接数据库的密码及数据库均可以自行设定。
在项目的根目录下执行下列命令,此命令会将数据表生成。
docker部署
找一台Ubuntu服务器,安装docker及docker-compose
在服务器上创建日志文件存储位置(该文件用于 docker-compose 中 volumes 关联)
构建容器
你可能会遇到build失败的问题。
因为国内的原因无法正常自动下载 postgres 和 redis_alpine 这两个软件。
解决方案如下: 下载此链接中两个docker软件包至服务器: postgres_15.tar redis_alpine.tar
https://pan.baidu.com/s/1qMRtQ0Fhy7r5L_58RHe5Fw?pwd=vu3c 提取码: vu3c
可以将文件先下载到本机,然后使用scp命令将文件上传至服务器。
文件上传至服务后,cd至文件所在的目录,然后运行下列指令:
运行容器
扩展使用: Flask-Migrate 使用方法
首先,初始化 Alembic 目录(migrations/ 文件夹):
当你对模型进行了更改(如添加新表或修改现有表的结构),你可以生成迁移脚本:
这将根据你定义的模型生成迁移脚本。
执行迁移
扩展使用:使用 pdb 工具断点调试