Old Stuff - 'ThinServer' blogging - Part 1

Another gem from 4 years ago. Oh boy. These days we'd use a raspberry-pi and be done with it. Now technically depreciated to the point of irrelevance, it's still a useful exercise in using what you have to hand in creative ways. At the time of writing the latest version was 0.5.10, it's now up to 0.11.7. I should know better than to date myself by versions...


A full working webserver with content management and respectable performance in just 2GB of flash memory using completely free software. Interested? Read on!

This is part 1 of 3 and will deal with getting a basic service running.

Ingredients

Method

1) A few more changes

There are a couple of additional changes you are going to need to make because the install of the various components are going to need more room than usual.

The first step is to uninstall everything - literally remove all the remaining installed applications.

The next step is to make an adjustment to the memory. Most HP thinterms come with a control panel tool called 'HP RAMdisk Manager'. Open this and move the slider all the way to the right to give you the maximum RAMdisk - a mindblowing 96MB in my case. If you don't do this then installs will fail.

2) Install the Node.js

OK a small aside. I did try to install the bitnami core on the thinterm but it was quite large and difficult to install without using a 8GB thumbdrive and using the portable version. That's not to say that there is anything wrong with Bitnami, it's just not a viable solution on something as lightweight as a thinserver. Node.js is based on the java runtime from the Chrome browser and although still a recent bit of code, presented no problems on the thinserver.

Install the node.js MSI file on the thinterm following the defaults. Thats it!

3) Install portable apps

On the PC or laptop download the apps and run the installers to expand them. Copy the resultant folders to the root of the C: on the thinterm using the USB stick and make shortcuts to the two executable onto the desktop.

A quick note: The basic Internet Explorer browser in the XPe image can't cope with what we are going to be doing- chrome is a better option, but don't expect to be able to open 30 tabs without something breaking. Notepad++ is a much nicer application to edit the files we'll be looking at in part two, particularly if anything does wrong and an error is reported on line 34 - Notepad++ numbers the lines for easy fault finding

4) Install Ghost

Ghost is a combined small webserver and blogging content manager. It's awesome! Download the latest ZIP file and extract the contents ( don't worry the standard XPe image can open ZIPs without any 3rd party programs ). I copied the Ghost folder to the root of the C: drive so I ended up with C:\ghost-0.5.10 and if you want the commands below to work I'd suggest you do the same.

From the start menu, open the 'node.js command prompt'. Type the following at the command prompt

cd c:
cd gho*
npm install --production

Wait for the installer to complete - this might take a while due to the thinservers minimal computing power. But eventually it will finish. When it does, type

npm start

This will start ghost in develoment mode

5) Take a look

Using the chrome browser, visit http://localhost:2368/ to see the basic site, then visit http://localhost:2368/ghost to get to the management side of things. Rather than try to improve on the excellent documentation on the Ghost website I'd point you at http://support.ghost.org/ghost-first-run/ to guide you though this.

Whats next?

The next part of this article will deal with editing the ghost configuration file & installing and configuring nginx.

The final part will deal with installing a theme into Ghost, making some changes to ensure that things start right up when the thinserver is restarted and giving a few ideas about how to get the server onto the internet.

The part after the final part will be everything I forgot to put in the first three parts.

Creative Commons License


This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.