Magicmonkey¶ ↑
Magicmonkey is a useful script that can help you to manage your Ruby on Rails applications. Magicmonkey allows to build in easy way the follow web server architecture:
+---------------------------------------------------------------------------------------------------+ | Apache web server | | +----------------------+ +----------------------+ +----------------------+ | | |Proxy A (virtual host)| |Proxy B (virtual host)| |Proxy C (virtual host)| | | +---------^------------+ +---------^------------+ +---------^------------+ | | | | | | +-----------|-----------------------------|--------------------------------------|------------------+ | | | +-----------v-------------------+ +-------v-----------------------+ +------------v------------------+ | Application server standalone | | Application server standalone | | Application server standalone | | Phusion passenger | | Phusion passenger | | Thin | | Ruby 1.9.2 | | Ree 1.8.7 | | Ruby 1.9.2 | | Listen on port 3000 | | Listen on port 3001 | | Listen on port 3002 | | Site foo.com | | Site bar.com | | Site wella.com | +-------------------------------+ +-------------------------------+ +-------------------------------+
Every your web applications have a virtual host like this:
<VirtualHost *:80> ServerName foo.com ProxyPass / http://127.0.0.1:3000/ ProxyPassReverse / http://127.0.0.1:3000/ </VirtualHost>
A proxy that speak with an application server in standalone mode (like Phusion Passenger v3) that run with a specific Ruby version. To do this you need to have install RVM to manage multiply Ruby versions.
Install¶ ↑
gem install magicmonkey
Usage¶ ↑
First of all you need to configure an application. To to this use the magicmonkey command ‘configure’:
magicmonkey configure APP_NAME [options]
When configured, you can start, stop, restart the application
magicmonkey {start|stop|restart} APP_NAME1, APP_NAME2, ...
If no application is given start, stop, restart all applications.
You can show the configuration of all your applications with
magicmonkey show
Magicmonkey save the configuration in ~/.magicmonkey.yml
Support¶ ↑
You can use this email address for any questions or help: enrico@megiston.it.
Note on Patches/Pull Requests¶ ↑
-
Fork the project.
-
Make your feature addition or bug fix.
-
Add tests for it. This is important so I don’t break it in a future version unintentionally.
-
Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
-
Send me a pull request. Bonus points for topic branches.
Copyright¶ ↑
Copyright © 2010 Enrico Pilotto. See LICENSE for details.