Flask是用python进行web开发时,常见的python web框架。
如果服务器可以连接到外网,可以简单的用 pip install Flask 直接将Flask的依赖包及Flask直接安装好。
但公司的测试环境,一般是内网,不能随表上连到外网,这就需要采用离线软件包方式安装了。
下面是我的测试安装过程。

1. 确定依赖的包(参考:http://stackoverflow.com/questions/18951829/how-to-install-flask-offline):

You need to download all of flask's dependencies:'

Werkzeug>=0.7
Jinja2>=2.4, which requires:
MarkupSafe
Babel>=0.8, which requires:
pytz
itsdangerous>=0.21
Install them in that order before you install Flask.

恩,就是Werkzeug, Jinja2,MarkupSafe,Babel,pytz,itsdangerous,这几个。flask的文档里面只提到了它依赖于Werkzeug和Jinja2,但是在离线状态下安装Jinja2会报错,所以,是需要全部的。

2. 在专门下载包的地方把包下载下来:https://pypi.python.org/pypi,当然,使用右上角的搜索框。
 你可能会看到很多,可以选择XXXXX.tar.gz版本的,有些包不一定全面,还需要搜索引擎,它们可能在github上。

3. 对于依赖包也可以下在一个安装包后,在解压目录的setup.py中查看 install_requires内容
Flask-0.12.1 离线安装需要的软件包为:
     install_requires=[
        'Werkzeug>=0.7',
        'Jinja2>=2.4',
        'itsdangerous>=0.21',
        'click>=2.0',
    ],
这四个依赖包都需要安装后,才能正常安装Flask;这四个依赖包也有其他依赖:
Jinja2-2.9.6 安装需要的依赖包有:
    install_requires=['MarkupSafe>=0.23'],

Werkzeug-0.12.1 安装没有必须的依赖包;

itsdangerous-0.24 安装没有必须的依赖包;

click-6.7 安装没有必须的依赖包;

MarkupSafe-1.0 安装没有必须的依赖包;

 
4. 下载和解压如下内容后,按照软件依赖顺序依次安装
 [root@tk-dat-asa202 Flask]# ll
total 2472
drwxr-xr-x 10 1000  1000    4096 May 15 16:25 click-6.7
-rw-r--r--  1 root root   279019 May 15 16:21 click-6.7.tar.gz
drwxr-xr-x 10 1000 users    4096 May 15 16:30 Flask-0.12.1
-rw-r--r--  1 root root   548511 May 15 16:15 Flask-0.12.1.tar.gz
drwxr-xr-x  6  503    20    4096 May 15 16:26 itsdangerous-0.24
-rw-r--r--  1 root root    46541 May 15 16:21 itsdangerous-0.24.tar.gz
drwxr-xr-x 10  501    20    4096 May 15 16:28 Jinja2-2.9.6
-rw-r--r--  1 root root   437659 May 15 16:19 Jinja2-2.9.6.tar.gz
drwxr-xr-x  6  501    20    4096 May 15 16:29 MarkupSafe-1.0
-rw-r--r--  1 root root    14356 May 15 16:28 MarkupSafe-1.0.tar.gz
drwxr-xr-x 10 1000 users    4096 May 15 16:27 Werkzeug-0.12.1
-rw-r--r--  1 root root  1169595 May 15 16:19 Werkzeug-0.12.1.tar.gz

依次解压缩所有的文件包,然后执行安装命令:
tar -zxvf *.tar.gz
cd
python setup.py install
pip list

所有软件包都安装完毕后,确认Flask状态:
# pip list | grep Flask
Flask (0.12.1)


5. 在 Flask 安装完毕后,测试应用程序编写和访问:

从一个最小的应用程序开始:
vim hello.py

脚本内容如下:
#/usr/bin/env python
#_*_ coding:utf-8 _*_

from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello World!'
   
if __name__ == '__main__':
    app.run(host='0.0.0.0', port=9000)
   
启动脚本:
python hello.py

打开浏览器,访问 “http://127.0.0.1:9000/”,就可以看到熟悉的“hello world!”了。


注:上面的所有软件包,我已经上传,可以直接下载使用。