## 配置开发环境

### 项目结构
```
flask-apollo/
|-- deployment                  // 项目部署配置 gunicorn、logging 等
|-- tests                       // 项目测试代码
|-- ulogin                      // 项目主体
    |-- action                  // action类处理
    |-- cache                   // Redis缓存
    |-- config                  // 启动配置 
    |-- form                    // 参数验证 marshamllow 
    |-- model                   // 域名参数配置
    |-- srv                     // 请求上游接口参数配置 
    |-- templates               // jinja2模板
    |-- util                    // 公用util
    |-- views                   // 路由配置
    |-- __init__.py             // 启动配置
    |-- extensions.py           // 插件库配置    
    `-- urls.py                 // 蓝本注册
|-- web                         // web前端静态文件
|-- db                          // db初始化文件
|-- Dockerfile                  // Dockerfile
|-- app.py                      // 项目启动入口
|-- docker-compose.yml         // Docker-compose 配置文件 
`-- requirements.txt            // 项目依赖
```


### 创建 Virtualenv 
项目使用 Python3.7

```bash
virtualenv -p python3.7 env
source env/bin/activate
```

### 安装第三方依赖库

```bash
pip install -r requirements.txt -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
```

#### 设置环境变量

```
vim ~/.bash_profile

# 添加
export 环境变量名=环境变量值
```

### 启动开发服务器

```bash
python -m flask run
```

### window中启动开发服务器

```bash
python -m flask run
```

## docker部署(建议采用)

```bash
docker-compose build
docker-compose up
```