Linode + Livecode + Virtualmin
andre at andregarzia.com
Tue Feb 7 21:20:12 CST 2012
This is a postmortem email about setting up a Linode server to use
Livecode Server. If you are not interested in learning about a great
service (Linode), a great control panel (Virtualmin) and a great
server language (Livecode server), then, you should just close this.
I've been involved with Livecode and the Web since a long time. I did
CGI stuff, tried FCGI stuff and then migrated to the new server
offerings as soon as it was available. One of the hardest things when
talking about the web is keeping yourself current. You don't need to
ride the bleeding edge, actually, you shouldn't ride the bleeding edge
at all when dealing with production servers. The problem is when you
start falling behind.
I am a happy user of JaguarPC hosting ( http://www.jaguarpc.com ) but
I noticed that I seldon use their services. My VPS is unmanaged. I use
my own control panel and not the ones they make available. In the last
five or so years, I called support couple times and my biggest
problems was a screw up on their node configuration that was not
caused by me at all. My problem there was my choice of operating
system for my host. My VPS is ancient, I set it up five years ago and
selected CentOS because it was the closest thing I could have to a
full RHEL install. Truth be said, I don't like CentOS. I never did. I
think YUM is a bad manager and I don't like RPM based systems. But my
served worked fine up until some weeks ago when it started crashing
randomly. Every ten or so days, Apache would die. No log written. I
tried everything and I am yet to find what is causing the crash. The
correction is easy, I just need to reboot apache, so I built myself a
little watchdog that checks to see if Apache is actually serving my
page, if it stops, then my watchdog reboots it, the process takes less
than a minute. I decided it was time to upgrade CentOS. I am sure this
crash is something about a bad interaction between libraries and
modules. The problem is YOU CAN'T UPGRADE CENTOS VERSIONS!!!! Yes, you
read it right, there is no way to upgrade CentOS 5 to CentOS 6. The
recommended way is to build a new server, install CentOS 6 and move
the content. Well, if I am going to build a new server, it might just
be Ubuntu 10.04 LTS.
So, I decided to build a new server and since I was in the mood for
trying new things, I signed up with Linode ( http://www.linode.com ).
I've choosen the Linode 768 plan and installed Ubuntu 10.04 LTS in it.
The process was painless and the online guides helped a lot. The time
between signing up for the service and having a server up was less
than 20 minutes.
Next, I decided to install Virtualmin ( http://www.virtualmin.com ).
Virtualmin is a professional control panel. I don't like Plesk and I
don't like cPanel. I can write a book about why cPanel is horrible and
Plesk is his ugly cousin. Virtualmin is beautiful and elegant. I paid
for Virtualmin and I do it every year, it is that good. The
installation of Virtualmin is a single line of in a bash shell, you
just download a shell script and runs it. After it process everything,
you have a wonderful control panel running.
One cool think about Virtualmin is that I can define "Virtual Server
Templates". In this templates, I can set any option for a virtual
server and I can customize a skeleton folder with prepopulated content
for the server. I created a new template called "Livecode Server". I
downloaded Livecode Server distribution and placed it in the cgi-bin
skeleton folder. I also installed RevIgniter (
http://www.revigniter.com ) on the public_html skeleton folder. My
template was ready.
Back in the browser, I clicked to create a new virtual server and
filled the information for one of my domains, in the template
selection, I choose my "Livecode Server" template. I clicked "Create
Server", less than 5 minutes of automated processing later, I had my
domain running with RevIgniter + Livecode Server working out of the
box. No need to setup anything. Whenever I create a new domain on my
server, it installs Livecode and RevIgniter automatically. How cool is
I am building this new server very carefully. The amount of experience
you gain in 5 years is a lot and this server already behaves better
than my other one. This new server is called Horus and when it is
ready, I will clone it and name the new server Osiris. Horus will be
the production server because he is the king of Egypt in the land,
Osiris will be the development server because he is the king of Egypt
in the sky (duat). It will be really easy to keep both Egyptian kings
in sync because Virtualmin has an API and export/import routines that
will allow me to migrate virtual server and sync them with ease.
You can't do these kinds of stunts in normal shared servers where you
don't have administrator privileges but when the machine is yours, the
sky is the limit. My new server is named after Egyptian kings because
I want them to last thousands of years (at least Ubuntu is
If anyone here is using Linode and Ubuntu 10.04 LTS, you should know
that Livecode Server 5.0.2 works perfectly out of the box!
Andre "I Still Prefer FreeBSD Over Linux" Garzia
http://www.andregarzia.com -- All We Do Is Code.
http://fon.nu -- minimalist url shortening service.
More information about the use-livecode