With May here and the longer winter evenings ahead I thought I'd make the time to review some fun tech stuff I did last summer. I've got a spare Raspberry Pi or two so I decided to put them to good use by constructing this simple server rack. In this post, I'll give a quick overview of the hardware used and a breakdown of the different software applications installed. For more detailed instructions of how the software is configured, I've included links to some really helpful sites at the end of the post.
Let's start at the top. This a Raspberry Pi Zero, running Raspbian Stretch OS. The post you are reading and the entire blog site are hosted on this tiny computer.
On the Pi Zero, I installed and configured the following software packages:
- Ghost - a fully open source, adaptable platform for building and running a modern online publication
- Maria DB - one of the most popular database servers in the world
- NGINX - a free, open-source, high-performance HTTP server and reverse proxy
- Supervisor - a client/server system that allows its users to monitor and control a number of processes on UNIX-like operating systems.
In the middle you'll find a Raspberry Pi 3 Model A+, again running the Raspbian Stretch OS. For some time now, I've wanted to take a closer look at Docker so I was really pleased to discover it will happily run on the newer Raspberry Pis (ARMv7). Installing it was a piece of cake and once it was up and running I created and deployed a couple of simple .NET Core applications.
On this Pi, I installed the following:
- Docker - a tool designed to make it easier to create, deploy, and run applications by using containers
- ASP.NET Core / ASP.NET MVC / Entity Framework Core / Sqlite.
And finally, at the bottom is a Raspberry Pi 3 Model B, also running the Raspbian Stretch OS.
This is a classic LAMP server that hosts my online store using the following tools and applications:
- OpenCart - an online store management system
- Apache - a free and open-source cross-platform web server software
- MySQL - an open-source relational database management system
- PHP - a general-purpose programming language originally designed for web development.
So there you go, I hope you enjoyed the post. I definitely had lots of fun learning a bunch of new stuff, working with some very cool software and configuring these fantastic low cost Raspberry Pis.
And just to make everything awesome, Lucy and Emmet helped too!