A set of recipes to provision an ubuntu server using Chef.
The main goal is provisioning and deploying a django app.
Original idea from bsnux chef-mint.
chef-solo is used for simplicity because we only want to provide one machine. However, you can adapt the recipes to provision n machines using regular Chef.
OPSCODE offers a complete set of independient operating system recipes.
- Chef. See installation instructions.
-
Clone current repo.
-
If Chef is not installed on your machine, you can execute:
$ sudo ./init.sh
-
web.json: web stack attributes
-
web.rb: web stack configuration file
-
cookbooks/main/ : system setup cookbooks
-
cookbooks/nginx/ : nginx setup cookbooks
-
cookbooks/python/ : python basic stuff
-
cookbooks/gunicorn/ : gunicorn install and configuration
Web stack:
$ cd chef-django-ubuntu
$ sudo chef-solo -c web.rb -j web.json
Postgresq: $ cd chef-django-ubuntu
$ sudo chef-solo -c web.rb -j pgdb.json
Chef Solo tutorial: Managing a single server with Chef
Complete and official cookbook repository for chef
Setting up Django with Green Unicorn, nginx, supervisord and fabric on CentOS 5.5