Running and hosting MarkLogic for free
Over the past year, I’ve done some consulting for MarkLogic Corporation, including some development using their flagship product, MarkLogic Server. I created the back-end content management system for their Developer Community website. It was a real joy working with the software, particularly with its new support for XSLT. (You can read more about my excitement here.)
Since then, I’ve toyed with the idea of creating an application for The Trillium School (which I’ve blogged about elsewhere) to help manage Judicial Committee (JC) meetings.
Since I had created a basic but flexible framework for browser-based XML editing (using HTML forms) in the RunDMC project, I thought it would be nice to reuse that for the JC app for Trillium School. Now, Trillium doesn’t have a big budget, and this would be a volunteer project, so cost is a big consideration. Luckily, the free Community License for MarkLogic Server seems to fit the bill, allowing the development of non-commercial/personal applications. So licensing doesn’t appear to be an issue. Hosting, on the other hand, can be costly. Taking into consideration MarkLogic’s system requirements, we were looking at $50–100 per month for hosting fees. At that point, I decided that maybe MarkLogic was overkill for what I wanted to do.
Even so, I still liked the idea and was hoping to figure out a way to do it (ideally without having to host a server on campus or in my home). Then, in the last couple of days, I learned about the Amazon Web Services free usage tier. And I came across Mike Brevoort’s immensely useful screencast about how to get MarkLogic Server running on one of the Amazon EC2 “micro-instance” servers. (Mike is the one who beat me at the DemoJam earlier this year but then amazingly and graciously offered me the iPad, which I then dutifully gave to my wife.) Although I had created an AWS account in the past, I had never used EC2, so I wasn’t sure what to expect, but Mike’s video made it really easy and I had MarkLogic up and running on CentOS within 20 minutes. Mind you, at 613MB of RAM, the micro-instance doesn’t actually meet MarkLogic’s official system requirements, so it’s unsupported. But for the small application I’m interested in creating (small data set with very few users accessing the site approximately once per day), it just might work. So far, the server seems to be running fine. The next step is to create the application.
So I’m pretty stoked about playing with this. If you’re interested in trying this out yourself, just follow the steps in Mike’s screencast: Installing MarkLogic on an EC2 Micro Instance – Free for 1 year!