1. Gregory Petukhov
  2. django-server


That's this?

This script configures linux machine to run django projects. You can use it
as template to develop your own installation script.

This script works with debian machine, it uses aptitude to install webserver,
database, python, gcc, virtualenv, pip, etc.

Webserver stack is nginx + uwsgi + django + postgres.

How to use it?

1) Buy VPS. Get root SSH credentials. Setup RSA authorization::

    ssh-copy-id root@your-server

2) Upload the script::

    scp install.sh root@your-server:/root/

3) Log in to VPS as root

4) Check your /etc/apt/sources.list. Add jessie (testing) repositories.

    To speed up apt operations you may choose debian repo mirror which is close to your
    geo location.  For example, if your server located in Nederlands country that has
    code NL then you can try to replace ftp.us.debian.org (if such string exists in
    your config) with ftp.nl.debian.org

    Also do not forget to add "contrib non-free" components if they does not exist.
    Example of default digitalocean config:

        deb http://ftp.nl.debian.org/debian wheezy main
        deb http://security.debian.org/ wheezy/updates
    After modification:

        deb http://ftp.nl.debian.org/debian wheezy main contrib non-free
        deb http://security.debian.org/ wheezy/updates main contrib non-free
        deb http://ftp.nl.debian.org/debian jessie main contrib non-free
        deb http://security.debian.org/ jessie/updates main contrib non-free

5) Update install.sh script::

    * Change INSTALL_* variables
6) Run the script:

    $ bash install.sh

During installation you'll need to confirm installation of various software packages (and resolve
issues if any).

That's all. Of course, you can and should adapt script for you taste.


The script is self-documented, being the simple shell script.

Some extra comments in russian could be found here:
 * http://habrahabr.ru/blogs/django/120363/


Create ticket on http://bitbucket.org/lorien/django-server/issues
or drop mail to lorien@lorien.name