You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
于福笑 cadaf28ec9 fix 1 year ago
fonts all_project 1 year ago
gongyequ fix 1 year ago
lib all_project 1 year ago
nsproject fix 1 year ago
.gitignore fix 1 year ago
README.md 更新 'README.md' 1 year ago
manage.py all_project 1 year ago
pip.conf all_project 1 year ago
requirements.txt fix 1 year ago
start.sh fix 1 year ago
uwsgi.ini update 1 year ago
监控.md 更新 '监控.md' 1 year ago

README.md

工业区评估平台

本工程是同济建筑院工业区评估平台项目

相关背景

受同济建筑院张洁委托,开发一套能够实现工业区评估的网页

安装依赖包

 pip install -r requirements.txt

执行数据库文件

 python manage.py makemigrations
 python manage.py migrate
 注:
    此项目已经再 04 工作站应用过数据库文件,如果不是在 04 工作站,请重新执行上述两条命令

数据库

 postgresql 配置如下:
    'default': {  //表结构相关
    'ENGINE': 'django.db.backends.postgresql',
    "OPTIONS":{
        "options": "-c search_path=gongyeyuanqu_data"
        },
        'NAME': "product",
        'USER': "",
        "HOST": "ai.cityface.tech",
        "PORT": "32768",
        "PASSWORD": "",
    }
    
 redis 配置如下:
    "sms_code": {  //短信相关
    "BACKEND": "django_redis.cache.RedisCache",
    "LOCATION": "redis://ai.cityface.tech:10419/2",
    "OPTIONS": {
        "CLIENT_CLASS": "django_redis.client.DefaultClient",
        "PASSWORD":"",
    }
}

本地启动

 python manage.py runserver ip:port

认证方式

Token:
      1.所有请求必须携带 token ,后续还有可能增加其他信息(如:app),这些信息通过 HTTP Header 传递过来
      2.Bearer 传递的 access token ,所有需要登录的接口,都需要提供 access token
      3.RefreshToken 后续可能增加 refresh token 用于刷新 access_token

腾讯云

使用示例:
        obj = SmsSender()
        obj.send(phone,短信模板,验证码)

项目架构

├─fonts              //字体文件
├─gongyequ          
│  ├─migrations      //数据库文件
│  ├─models          //模型类
│  ├─utils           //封装的一些方法:如分页、校验器、code等
│  ├─views           //试图函数
├─lib
│  ├─tengxunyun      //第三方相关,如腾讯云
└─nsproject          //项目配置文件

部署

04工作站:两种启动方式
    1.本地启动:方便开发、测试阶段使用
        进入目录:/home/yufuxiao/data/project 执行:python3.7 manage.py runserver 0.0.0.0:10417
    2.docker 部署:联调没问题后,正式部署采用的方式
        1.构建镜像  
            进入 /home/yufuxiao/data 下,执行:sudo docker build -t 镜像名称 .
        2.启动容器
            sudo docker run -itd --name 容器名称 -p 10417:8000 镜像名称
        3.查看是否启动成功
            sudo docker ps -l
        4.进入容器
            sudo docker exec -it 容器名称 bash
        5.使用 uwsgi 服务启动
            uwsgi uwsgi.ini(需要进入到项目文件夹)
        6.查看是否启动成功
            1.查看 uwsgi 进程服务是否启动:netstat -nltp
            2.查看日志:cat uwsgi.log

Dockerfile

FROM python:3.7
MAINTAINER YFX

# 设置 python 环境变量
ENV PYTHONUNBUFFERED 1

# 在容器内/var/www/html/下创建 gongyequ 文件夹
RUN mkdir -p /var/www/html/gongyequ

# 设置容器内工作目录
WORKDIR /var/www/html/gongyequ

# 将当前目录文件加入到容器工作目录中
RUN rm -rf /var/www/html/gongyequ/*
COPY ./project  /var/www/html/gongyequ/

# 设置pip源为国内源
COPY ./project/pip.conf /root/.pip/pip.conf

# 利用 pip 安装依赖
RUN python3.7 -m pip install -r /var/www/html/gongyequ/requirements.txt

# 安装 uwsgi
RUN pip install uwsgi