Python笔记··By/蜜汁炒酸奶

“仿OpenStack开发云计算管理软件”第一周实验报告

一、开发环境搭建

  • Virtualenv:创建独立的 Python 开发环境

    python-libvirt 是 Python 版本的 Libvirt API。 Libvirt API 是一套用于多种虚拟化平台统一管理的接口 1、安装虚拟化组件 2、启动 libvirt-bin 服务 3、查看 libvirt-bin 服务状态

    sudo apt-get install python-virtualenv
    sudo apt-get install qemu libvirt-bin python-libvirt
    sudo service libvirt-bin start
    sudo service libvirt-bin status
    sudo virsh list
    
    1
    2
    3
    4
    5
  • MySQL 相关组件

    sudo apt-get install mysql-server
    
    1

  • 创建必要的代码目录

    根据需求创建Flask框架架构

  • 提交代码

    熟悉git相关操作

  • 安装 Python 模块

    提前安装所需模块,避免开发中的各种麻烦以致影响开发进度

  • 添加 .gitignore

    提交代码时排除无需提交venv 目录包含所有依赖的软件包

二、最小的可运行代码

  • loucloud/config.py 初始化Flask 应用的配置信息
  • loucloud/extension.py 初始化flask-sqlalchmey,flask-login及flask-cache三个插件
  • loucloud/app.py loucloud/init.py 用于部署Flask 应用; loucloud/init.py将app创建函数提供出来,供外部引用。
  • loucloud/user/ user模块将用来实现用户管理功能,不是本周的任务,本周只实现一个简单的测试页面即可。
  • manage.py 使用 Flask-Script 实现基本的运行命令。

三、 运行代码

cd /home/shiyanlou/Code/shiyanlou_cs354
source venv/bin/activate
python manage.py run
1
2
3

之后使用浏览器访问http://localhost:5000 即可

四、提交代码

  • 提交最终代码

    cd /home/shiyanlou/Code/shiyanlou_cs354
    # 查看当前文件修改的列表
    git status
    # commit
    git add *
    git commit -m 'first commit of loucloud'
    # push到git.shiyanlou.com远程仓库
    git push origin master
    
    1
    2
    3
    4
    5
    6
    7
    8
  • 版本做个标记v0.1

    cd /home/shiyanlou/Code/shiyanlou_cs354
    git tag
    git tag -a v0.1 -m "LouCloud v0.1"
    git push origin –-tags
    
    1
    2
    3
    4

五、遇到问题

  • Flask 框架问题

    由于没提前学习基础导致Flask框架中的部分代码实现的功能看不懂。(自身原因)

  • python相关模板安装问题 在安装paramiko时第一次出现未找到pyCrypto的问题,安装后出现了新问题,具体的忘了(也忘记截图了,好像有个东西没找到或者是null) 第二次出现未找到ecdsa的问题(这次未出现“未找到pyCrypto的问题”),安装后解决问题。

六、总结

熟悉了git提交等基本命令、了解了用于创建独立的 Python 开发环境的Virtualenv,虽然初窥了Flask框架,但仍需要学习实验楼的Flask框架基础课程。 Liux中安装Python模板,可先将模板名称统一放置一txt文件(以requirement.txt为例)中,每个模板名称独占一行。之后运行

pip install -r requirement.txt
1

第二页附pyCrypto+paramiko+ecdsa安装   Python中使用SSH需要用到OpenSSH,而OpenSSH依赖于paramiko模块,而paramiko模块又依赖于pycrypto模块,因此要在Python中使用SSH,则需要先安装模块顺序是:pycrypto -> ecdsa -> paramiko

1、安装pyCrypto

安装这个比较麻烦,需要本地编译,要装vs或gcc还有一堆配置,还不一定能编译成功。(网上能搜到安装步骤) 建议直接下载已编译版: http://www.voidspace.org.uk/python/modules.shtml#pycrypto 直接下载并安装既可。 (注:crypto有java和C++版)

2、安装ecdsa

看很多博客没有提到这个库,但我执行paramiko时,提示找不到ecdsa模块。 下载:https://pypi.python.org/pypi/ecdsa/0.9 ,解压到一个目录,目录中有一个setup.py。 安装比较简单,windows下直接在刚才解压后的目录执行:python setup.py install

3.安装paramiko

与安装ecdsa类型,只是打开下载页面很慢。。。 下载: https://github.com/paramiko/paramiko#, 安装步骤同ecdsa

1、所有另外安装的第三方库,如果不特指定安装后库目录的话,将默认保存到 %PYTHON_HOME%Libsite-packages下。 2、python大小写敏感,对模块名也是。 3、Crypto可以提供常见的加解密算法,如:RSA、RC4、DSA、DES

参考资料

windows下安装并使用Python的SSH模块(paramiko+pycrypto+ecdsa)

预览
Loading comments...
2 条评论
  • W

    加油。好好折腾,弄点成绩出来,推广;挣钱了,休息。再思考,再一次折腾。

example
预览