Any*_*ing 3 django web-deployment webfaction python-3.x
尝试为我的 django 应用程序简化 webfaction.com 的部署过程,我有一个主(工作副本)和一个开发分支。
目前我正在做以下事情:
显然,我错过了高效的开发列车,据记录,我只作为业余项目使用了 django 几个月。
任何人都可以建议一个更有利于理智开发的 Django 部署过程吗?
我强烈建议 Fabric 处理您对 WebFaction 的部署:http ://docs.fabfile.org/en/1.11/tutorial.html
通过使用 Fabric,您可以从本地终端部署代码并执行其他服务器端操作,而无需手动 ssh 到服务器。首先安装 Fabric:
pip install Fabric
Run Code Online (Sandbox Code Playgroud)
在您的项目根文件夹中创建 fabfile.py。这是一个可以帮助您入门的示例 fabfile:
from fabric.api import task, env, run, cd
from fabric.context_managers import prefix
env.hosts = ('wf_username@wf_username.webfactional.com',)
env.forward_agent = True
MANAGEPY = '~/webapps/my_project/code/my_project/manage.py'
PY = '~/webapps/my_project/env/bin/python2.7'
@task
def deploy():
with cd('~/webapps/my_project/code/'):
with prefix('source production'):
run('git pull --rebase origin master')
run('pip install -r requirements.txt')
run('{} {} migrate'.format(PY, MANAGEPY))
run('{} {} collectstatic --noinput'.format(PY, MANAGEPY))
run('touch my_project/my_project/wsgi.py')
Run Code Online (Sandbox Code Playgroud)
您可以使用以下命令从终端运行 fab 任务:
fab deploy
Run Code Online (Sandbox Code Playgroud)
在我看来,直接在服务器上更改代码是一种不好的做法。Fabric 可以改进您的开发流程,以便您仅在本地进行代码编辑、快速部署和测试。
| 归档时间: |
|
| 查看次数: |
587 次 |
| 最近记录: |