Find file
Fetching contributors…
Cannot retrieve contributors at this time
88 lines (53 sloc) 2.16 KB
by Dave Fayram, Tom Preston-Werner
== Summary
Leverage the YAWS webserver (and additional erlang-based infrastructure) to
run Rails.
== Dependencies
* Erlang:
* Yaws:
* Ruby:
* Ruby Gems:
* rake:
* erlectricty:
* rack:
== Installation (from gem)
sudo gem install fuzed
== Installation (from git)
Get it from the git repo:
git clone git://
Change to the fuzed working copy:
cd fuzed
Build Fuzed:
rake build
== Configuration
Create a shared Erlang cookie on each machine. In order for Erlang processes in
different interpreters to communicate with each other, they each need to be
able to find a file called .erlang.cookie in the home directory of the user
under which they are running. The cookie should contain 20 uppercase alpha
characters on a single line (no newline).
Generate a starter Yaws config file with:
fuzed-conf RAILS_ROOT 8080 > fuzed.conf
where RAILS_ROOT is the absolute path to the root directory of your Rails
project. You may optionally specify a port as the second argument. This will
generate a file called 'fuzed.conf' which contains a sample Yaws config file
that should be suitable for initial testing.
== Starting fuzed
Start the fuzed master server (yaws) locally:
fuzed start -n server@ -c fuzed.conf
In another terminal, start a fuzed client locally:
fuzed join -n client@ -m server@ -r RAILS_ROOT
where RAILS_ROOT is the same as before.
Point your browser at:
If everything worked out, you'll see your Rails app!
== What is a Valid Hostname?
Erlang has a funny notion about what a valid hostname is. Localhost won't
cut it. I recommend using rendezvous to point to your local host. Short of
that, works.
== Contribution Notes
* Please note that empty directories should contain a .placeholder file
(which should be empty), to facilitate the use of other version
control systems which bridge to subversion but don't support empty