Last night I decided to take advantage of Amazon's offer of 1 free* year of AWS services and I decided that I'm not actually adverse to long domain names so I acquired http://openlegislationplatform.org.
Let me take a minute to say that Amazon's AWS Management Console provides an excellent user experience. Combined with a simple walk through I had a ubuntu instance up and running with a static IP address and shell access in minutes.I was able to use my current host Dreamhost (also an excellent user experience) to do the DNS hosting for me. I just added a type A record pointing to 50.16.246.197 and was live within minutes.
One of the cool things about the ec2 is that I can use key pairs instead of credential/password pairs to handle access control and as such, there are no passwords in ec2 land. Having almost exclusively used password protected, shared hosting in the past, the change of experience is great. I did have several issues uploading my RSA keys to Amazon but once I gave up and just accepted the once they generated for me, things went pretty smoothly.
The New Setup
Not content to only start 1 new thing at once, I decided to change up the server stack now that I had more freedom. The general plan was:
- Varnish on port 80 serving
Varnish
Varnish was surprisingly simple and easy to use with straight to the point and informative documentation. It worked right out of the box with this simple configuration and run command:
Redmine
Installing Redmine was a bit more difficult since I was deploying to a subdirectory `/redmine`. In theory the fix is simple but in practice I kept getting a ActionController::RoutingError that I not seem to resolve for each of my javascript/stylesheet resources. I then switched Mongrel in for Passenger and recieved ActionController::AbstractRequest errors instead. I believe this particular issue came up because rails 2.3.X has removed the AbstractRequest class. Luckily there was a quick little hotfix in the form of an initializer that fixed things up for me. In the end the setup runs/stops with the following commands which I've aliased in .bashrc:
Its a good start
I'm probably taking a break from this sys admin stuff for a while to work on the platform again, but I needed to get Redmine in order for the Roadmap/Issues/Wiki for developer communication. Small steps.
No comments:
Post a Comment