Building Course Assist Part 9: Deploying the NodeJs Socket Server to Digital Ocean.
The deployment process continues with this second step being deploying the socket server built using NodeJs onto Digital Ocean. The NodeJs socket server which is a very important part of the project is used to transfer data between the two Course Assist apps in real time.
Why Digital Ocean?🤔
Now if you read my previous blog you'll know that I deployed the Course Assist backend to Amazon Web Services(AWS) and I actually wrote about how I felt AWS was the best option for my project, so how did I find myself using Digital Ocean?😅
Just as I was about to open my AWS management console I came across a Digital Ocean ad and I thought hmm🤔..what if I tried Digital Ocean. So I checked it out, compared it to AWS and realized Digital Ocean is a better choice for Course Assist. I came to this conclusion because I felt AWS was more complicated than Digital Ocean in terms of the UI and general setup procedure. Plus digital ocean is cheaper than AWS and it's got fixed pricing so I wouldn't have to worry about finding a $1000 bill at the end of the month like I would if I used AWS🙄. Though AWS is better if you're a huge organization deploying enterprise applications. But if you're a small hobbyist/solopreneur like me😁, I'd strongly advise you to use Digital Ocean.
Deploying to a Digital Ocean Droplet💧
To deploy the NodeJs socket server I had to create a Droplet which according to the official docs are Linux-based virtual machines (VMs) that run on top of virtualized hardware. Basically, they're Digitals Oceans' equivalent of Amazon Web Services EC2 with a very cool name😂.
The setup of a droplet was mostly straightforward and had some similar parts to the EC2 setup process such as having an Ubuntu VM and ssh key creation. For the Droplet, I went for the cheapest package as a start which costs about $6, cheap right😏? During the setup, I chose NodeJs for the type of application I want to run. After the setup was complete I got my ipv4 address which when I clicked took me to a very neat page that welcomed me to my Droplet and gave instructions on how to set up your NodeJs application. I simply followed these instructions and within an hour I had my NodeJs socket server up and running. The simplicity and straightforwardness of the whole process were mind-blowing 🤯. I think Digital Ocean is my new best friend😂.
Now that the backend and socket server are deployed I can proceed to run tests to see how the Course Assist apps perform with deployed servers. Once the tests are done and are successful I'll then start working on creating a logo, landing page and social media pages for Course Assist which I'll write about in my new blog series Running Course Assist so keep an eye out for that😉. Thanks for reading and see you in the next one🙏.