career-planning-info
Python的职位信息; 项目网站URL:http://career.pygorun.com/
项目功能说明
项目文件结构说明
/_compat 版本、平台兼容处理
/deploy/ 部署配置文件
/logs/ 日志文件
/static/ 静态文件
/templates/ 模板文件
/web
/crawl/ 招聘数据抓取功能
/forms/ 页面表单
/indexData/ 首页数据配置
/models/ 项目数据模型
/utils/ 工具类
/views/ 项目路由
/__init__.py APP创建函数
/cli.py 自定义终端命令
/constant.py 项目常量
/errors.py 异常处理
/fake.py 测试数据生成
/log.py 项目日志配置
/template_ext.py 模板函数与过滤器添加
.env 环境变量
.flaskenv 环境变量
application.py app实例创建
config.py 项目配置信息
gunicorn.conf.py gunicorn的配置信息
本地运行
- 搭建本地PY环境
pip install -r requirement.txt
- 本地需要运行MYSQL、Redis
- 更改配置信息
# 主要修改下面两处
SQLALCHEMY_DATABASE_URI=mysql+pymysql://root:password@localhost:3306/career_plan_service?charset=utf8mb4
WEBHOOK="企业微信机器人URL"
- 运行
flask run
使用docker运行项目
# docker 运行项目: 本地测试使用
docker build -t career-plan:v1.0 .
docker run -it --name career_plan -p 8010:8010 career-plan:v1.0
docker run -it --name career -p 8010:8010 career-plan:v1.0
# docker-compose 运行项目: 线上部署使用
docker-compose build .
docker-compose up -d
注意事项
- 使用VPN后,可能会导致无法发送企业微信消息
TODO
- 后端数据库由Mysql改为Redis
- 压缩静态文件,优化访问速度
- 使用消息队列存储用户留言,避免因为发送失败导致错误通知
- 优化页面加载速度:使用redis缓存整个页面