A deploy tool for Django
Project description
Django Deploy
For deploy Django project on Linux server.
Features:
-
Automatic
-
Zero downtime
-
Multiple version
-
Easy rollback
Requirements on server
- Nginx
- Anaconda
- Nodejs
- PM2
Quick start
-
Add "deploy" to your INSTALLED_APPS setting like this:
INSTALLED_APPS = [ ... 'deploy', ]
-
Configure ssh:
add host config in
~/.ssh/config
Host host1 Hostname xxx.xxx.xxx.xxx Port 2222 User xxxx ServerAliveInterval 60 # IdentityFile ~/.ssh/id_rsa_xxxxx
create ssh-key file
ssh-keygen -t rsa -C "xxxx@xxxx.com"
you could leave a blank for password, when you execute ssh command it will not ask your password again
-
Add definition in settings of Django app
GIT_URL = 'git@github.com:path/name.git' GIT_DEPLOY_BRANCH = 'stable' APP_NAME = 'appname' DEPLOY = { "host1": { # same as ssh-config "task_prefix": "app-process", # prefix of process name "home_path": '/path/to/appname/www', # path of each versions "static_path": '/path/to/appname/statics', # path of statics for each versions "conda_path": '/path/to/anaconda3/bin', # path of anaconda bin "nginx_conf": "/etc/nginx/sites-enabled/appname", # enabled site config of Nginx "fixed_deploy_path": '/path/to/appname/fixed', # use to do migrate } }
-
create PM2 and Nginx configure template
create directory name of
deploy
in your base path of Django appdeploy/ └── templates └── deploy ├── ecosystem.config.template └── nginx.conf.template
content of
ecosystem.config.template
...
content of
nginx.conf.template
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file django-deploy-kit-0.10.2.tar.gz
.
File metadata
- Download URL: django-deploy-kit-0.10.2.tar.gz
- Upload date:
- Size: 8.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.0 requests-toolbelt/0.8.0 tqdm/4.31.1 CPython/3.6.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 44c3134a6de72b6cb16982309cfeed32e868cb3c18c383d95ba8da94b54e5465 |
|
MD5 | a096e852b3e72175a6e86164ccc2282e |
|
BLAKE2b-256 | 947d42d718a88b971652c01d6369a37e3709fcd3b6afa8d1149f6007b9274e98 |