Building a server for the first time was probably one of the coolest
feats I have ever accomplished. I wanted my own development environment where I could
do whatever I pleased, as well as host websites and
Minecraft servers if I felt like taking a break from work. So I decided
to use the Dell R610 to get started. After a two-and-a-half-hour drive
to Chapin, I picked up the device and got to work.
Getting this ancient beast to work in the modern age was not an easy task. I was
working with an unsupported platform, with drivers and software likely
unavailable to the public. Luckily, I was able to get things moving when I discovered
custom drivers that an anonymous IT specialist had developed. With that,
I successfully connected "JServer" to my LAN and eventually the WAN.
Configuration and Environment
When configuring this server, I felt it would be best to set it up with Ubuntu Server,
as Linux is one of the most liberating experiences I've had on a computer.
A Unix-based server environment felt like the best choice due to my love for
Apple's macOS environment, as well as the extensive support Ubuntu Server has
for older machines.
For web hosting, I figured that using NGINX and Uvicorn would be the best choice,
as NGINX's reverse proxy feature keeps my backend safe and secure from
potential attackers. Uvicorn would be the service that supports my APIs
due to its ease of use.
My Experience
Developing this server into what it is now was the experience I needed
to ultimately choose what I wanted to do in my career. Being able to
interact with this complex machine allowed me to truly understand
what it takes to keep the lights on on the internet. From getting
the server exposed to the internet, to getting my first cron job
to automatically run a script, to finally seeing a live website,
it was a wild ride through IT and Full Stack development as I now
have experience in both networking and building complex software.