skip to navigation
skip to content

Not Logged In

birdhousebuilder.recipe.nginx 0.1.2

A Buildout recipe to install and configure Nginx with Anaconda.

Latest Version: 0.2.3

Introduction

birdhousebuilder.recipe.nginx is a Buildout recipe to install Nginx from an Anaconda channel and to deploy a site configuration for your application.

Birdhousebuilder recipes are used to build Web Processing Service components (Phoenix, Malleefowl, Nighthawk, FlyingPigeon, …) of the ClimDaPs project. All Birdhousebuilder recipes need an existing Anaconda installation.

Usage

The recipe requires that Anaconda is already installed. It assumes that Anaconda is installed at the default location in your home directory ~/anaconda. Otherwise you need to set the Buildout option anaconda-home.

The recipe will install the nginx package from a conda channel and deploy a Nginx site configuration for your application. The configuration will be deployed in ~/anaconda/etc/nginx/conf.d/myapp.conf. Nginx can be started with ~/anaconda/etc/init.d/nginx start.

The recipe depends on birdhousebuilder.recipe.conda.

Supported options

This recipe supports the following options:

anaconda-home
Buildout option with the root folder of the Anaconda installation. Default: $HOME/anaconda.
input
The path to a Mako template with a Nginx configuration for your application.
sites
The name of your application.

All additional options can be used as parameters in your Nginx site configuration. The anaconda-home Path is available as prefix parameter.

Example usage

The following example buildout.cfg installs Nginx with a site configuration for myapp:

[buildout]
parts = myapp_nginx

anaconda-home = /home/myself/anaconda

[myapp_nginx]
recipe = birdhousebuilder.recipe.nginx
input = ${buildout:directory}/templates/myapp_nginx.conf
sites = myapp

hostname =  localhost
port = 8081

An example Mako template for your Nginx configuration could look like this:

upstream myapp {
  server unix:///tmp/myapp.socket fail_timeout=0;
}

server {
  listen ${port};
  server_name ${hostname};

  root ${prefix}/var/www;
  index index.html index.htm;

  location / {
    # checks for static file, if not found proxy to app
    try_files $uri @proxy_to_phoenix;
  }

  location @proxy_to_phoenix {
      proxy_pass http://myapp;
  }
}

Authors

Carsten Ehbrecht ehbrecht@dkrz.de

Changes

0.1.2 (2014-08-01)

  • Updated documentation.

0.1.1 (2014-07-24)

  • Added start-stop script for nginx.
  • Generates self-signed certificate for https.

0.1.0 (2014-07-10)

Initial Release.

 
File Type Py Version Uploaded on Size
birdhousebuilder.recipe.nginx-0.1.2.tar.gz (md5) Source 2014-08-01 8KB
  • Downloads (All Versions):
  • 118 downloads in the last day
  • 614 downloads in the last week
  • 2118 downloads in the last month