Django Web 项目在Windows环境的部署(再补充记录)

继续虚拟环境部署,这次采用的方式是:部署环境中创建了虚拟环境,直接按照开发环境一样创建工程、添加相关app,之后再覆盖替换源码:

1、虚拟机快照恢复至相关软件安装完待配置项目的状态

 2、一样创建虚拟环境PrescriptionPushSystem_env,解压缩项目包获取relies_packages,放至虚拟环境中

 3、激活虚拟环境,安装项目所有依赖项:

(PrescriptionPushSystem_env) C:\djangoWebRoot\PrescriptionPushSystem_env\relies_
packages>pip install --no-index --find-links=packages -r deploy_requirements.txt

 4、在部署目录 djangoWebRoot下创建项目PrescriptionPushSystem:

(PrescriptionPushSystem_env) C:\djangoWebRoot>django-admin startproject Prescrip
tionPushSystem

 5、进入项目目录下,按照开发环境创建相关app:management、uploadTimer

 6、以项目包下对应的文件替换新创建的文件夹:

 7、安装mod_wsgi ,httpd.conf中配置项目

8、创建数据库并初始化、迁移sessions、setting.py 配置、收集静态资源

 

 

9、重启apache,验证:

 完美呈现!

Summary:这种虚拟环境的部署方法相比上一篇的,操作清晰,项目结构也清晰明了,保持和开发环境一致

 

虽然本质上两种方式没区别,但是还是比较接受第二种, 如果部署环境是外网的话,可以使用pycharm的deployment 功能,在部署环境下创建虚拟环境并创建项目及app,通过pycharm将源码上传至部署对应目录进行覆盖替换:

在之前基础上创建新的虚拟环境project_env,激活虚拟环境安装mod_wsgi并配置conf

设置pip镜像源:

[global]
index-url=https://pypi.tuna.tsinghua.edu.cn/simple

python -m pip install --upgrade pip 升级pip 至最新版本

虚拟环境安装项目依赖:

(project_env) C:\djangoWebRoot\project_env\relies_packages>pip install -r deploy
_requirements.txt

创建项目、添加app

 接下来就是通过pycharm上传源码了:

首先,server 2008 上面搭建FTP服务器:

1、开启 server 2008 的FTP功能:

服务器管理器-->添加角色-->勾选“Web 服务器(IIS)”

下一步直到“选择角色服务” ,勾选“FTP服务器”

 选择下一步安装完成结束

 安装完才发现IIS管理工具没安装

右键选择添加角色服务

 

勾选管理工具,IIS管理控制台

完成安装

 2、创建一个用户组与用户用来登录FTP

服务器管理器-->配置-->本地用户与用户组,在用户上右键选择新用户添加用户,设置相关信息,点击创建

 3、配置FTP服务器

添加FTP站点

设置站点名称及物理路径 ,站点名称可以随便起,物理路径选择已经创建的项目根目录下,因为这个FTP是提供给pycharm上传项目文件的,所以两边要一致,都是项目根目录

 4、pycharm配置连接测试:

 首先配置连接

 新建一个FTP类型的连接

 配置相关连接信息,测试连接

 配置服务器上的根目录,通过FTP的设置,就是项目的根目录

 5、配置映射关系:本地项目与服务器的项目映射关系,

首先是本地的,就是本地项目根目录

 远端服务器的:就是远端服务器上创建的项目根目录

6、配置完成就可以将本地项目文件上传至服务器了,从本地项目文件下选择需要上传的文件,再点击 Tools ---> Deployment--->Upload

比如:现在把本地项目中的lib包上传至服务器

先看看服务器上有没有,还是初始的,并没有lib包

 pycharm执行上传

 下方会显示相关上传进度等信息

再到服务器上查看是否上传成功 

已经成功,接下来选择完整的项目文件上传

 出现错误信息:

 发现是原本在服务器上手动创建的项目和app相关的文件没有访问权限,被拒绝,当初创建的帐户是administrator,现在用户是deployer,肯定无权修改覆盖,将deployer添加进administrator用户组试试:

 

 

 

 确定完,再次上传覆盖一次

,然而问题依旧 

 更改deployer用户的用户组时,除了新添加的Administrators外,默认的用户组是Users,看下权限

再看项目目录相关权限

看到这就有点不懂了:Users对 PrescriptionPushSystem文件夹只有读取执行、列出文件夹内容、读取的权限,并没有修改和写入的权限,但是在没对deployer添加Administrators用户组时一样上传上去了部分,只是特殊的那几个被拒绝。照自己的理解在添加Administrators用户组前应该完全上传不了啊!

 直接把Users用户组删除试试!

 

没毛病!成功了!

剩下的就是数据库初始化、迁移sessions、httpd.conf对项目的配置、收集静态资源、settings.py的修改,这些就不再记录,最终配置完没问题

 

Summary:如果部署环境是外网环境,使用这种部署方式还是很方便的,依赖项的安装也可以直接访问国内镜像源安装,只需服务器安装了FTP,服务正常运行就可以方便的将本地的项目上传至服务器部署,那么可以看出这种方式对云部署应该很好用!

ok!记录了这么多windows 环境下的部署,下篇要记录Linux部署了,当然虽然windows这里罗里吧嗦这么多,但很多是共通的,到Linux篇就可以直接捡紧要的记录了!

 

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值