// Tutorial //

How To Set Up Cherokee on Ubuntu 12.10/Debian

Published on April 12, 2013
Default avatar
By Di Wu
Developer and author at DigitalOcean.
How To Set Up Cherokee on Ubuntu 12.10/Debian

About Cherokee

Cherokee is a high performance, lightweight, full-featured web server. It is compatible with SSL, FastCGI, and all modern web application frameworks like NodeJS, Rails, and Python through uWSGI. The best thing about Cherokee is that unlike Apache or Nginx, Cherokee can be administered completely through it's admin web interface.

Setup On Ubuntu

On Ubuntu droplets, Cherokee can be installed after the Cherokee PPA has been configured.

sudo add-apt-repository ppa:cherokee-webserver/ppa

If your system does not come with add-apt-repository, try installing software-properties-common first.

sudo apt-get install software-properties-common

Afterwards, update the apt cache and install cherokee and cherokee-admin

sudo apt-get update
sudo apt-get install cherokee cherokee-admin

Setup On Debian and Ubuntu

On Debian or Ubuntu droplets, Cherokee can be installed directly from the apt repository.

sudo apt-get install cherokee cherokee-admin

Setup On CentOS

On CentOS droplets, Cherokee can be installed directly from the EPEL repository.

sudo yum install cherokee

Check Cherokee Status

Now that Cherokee is installed, we can check whether it is running.

sudo service cherokee status

If Cherokee is ever having troubles, we can check its logs in the /var/log/cherokee directory. We can also verify that Cherokee is running by visiting the droplet's IP address. We should be greeted by this page.

Administering Cherokee

The best part about using Cherokee is being able to manage all of its configurations through a simple to use web interface. The web management interface does not and should not be running by default. It can be started through the cherokee-admin command.

sudo cherokee-admin

Cherokee-admin will output the temporary credentials to use in the web interface. Copy the one time password generated.

Cherokee Web Server 1.2.101 (Oct 25 2012): Listening on port 127.0.0.1:9090,
TLS disabled, IPv6 enabled, using epoll, 4096 fds system limit, max. 2041
connections, caching I/O, single thread

Login:
  User:              admin
  One-time Password: tGCtsC95wdbwtBCC

Web Interface:
  URL:               http://127.0.0.1:9090/

Since the administration page is bound by default only to the server's local interface, we should start another SSH connection and forward port 9090 to our local machine. This allows us to access the web interface on our local machine at port 9090.

ssh USER_NAME@DROPLET_IP_ADDRESS -L9090:localhost:9090

Now if we visit localhost:9090, we will be prompted for the admin password. After logging in, we can use the Cherokee admin interface to manage all aspects of our web server, such as setting up vServers, WSGI sources, tuning, etc...


Want to learn more? Join the DigitalOcean Community!

Join our DigitalOcean community of over a million developers for free! Get help and share knowledge in our Questions & Answers section, find tutorials and tools that will help you grow as a developer and scale your project or business, and subscribe to topics of interest.

Sign up
About the authors
Default avatar
Di Wu

author

Developer and author at DigitalOcean.

Still looking for an answer?

Was this helpful?
2 Comments

This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

There is a new book on the Cherokee server titled “Linux Web Server Development”. It is available from Amazon at: http://www.amazon.com/Linux-Server-Development-Step---Step/dp/1511993138

Or rather than the port forwarding you could just run

sudo cherokee-admin -b 123.456.789.012

Which will allow you to access the admin via the servers Ip or hostname.