Hello World!
This is my first post! I know absolutely nothing about this platform but I'll be learning it so I can expand it out to a blog/landing page for my other projects.
Backstory of this blog
I created this blog as a proof of concept to see how quickly and easily I could deploy a blogging server with no prior web development skills. (I'm sorry, front ends scare me!) I've dabbled with WordPress in the past, but never made anything PoCs.
I spun up this blog in a matter of hours using a droplet and some quick SysAdmin/Linux-Fu. I was actually pretty surprised how fast the process took, with the most time spent waiting for DNS propagation and a break for some 🍕 to go.
Here's how I deployed it:
I made an account using Digital Ocean and deployed a droplet using the Ghost 1-Click App feature.
After SSH'ing in and running the deployment script, my DNS propagation was still not completed and I had to skip the SSL (why is that even still an industry term, no one uses it anymore) setup.
Once I was able to verify the DNS propagation was completed:
[th1nkp4d-x1-09:40:45] ~ ☠ dig jorcom.online @8.8.8.8
; <<>> DiG 9.16.1-Ubuntu <<>> jorcom.online @8.8.8.8
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 55364
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;jorcom.online. IN A
;; ANSWER SECTION:
jorcom.online. 1799 IN A 143.110.200.28
;; Query time: 128 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Sun Sep 06 21:44:42 PDT 2020
;; MSG SIZE rcvd: 58
[th1nkp4d-x1-09:44:42] ~ ☠ dig jorcom.online @1.1.1.1
; <<>> DiG 9.16.1-Ubuntu <<>> jorcom.online @1.1.1.1
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 17676
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
;; QUESTION SECTION:
;jorcom.online. IN A
;; ANSWER SECTION:
jorcom.online. 1800 IN A 143.110.200.28
;; Query time: 352 msec
;; SERVER: 1.1.1.1#53(1.1.1.1)
;; WHEN: Sun Sep 06 21:44:45 PDT 2020
;; MSG SIZE rcvd: 71
I ran the simple one-liner, thanks to the amazing team at LetsEncrypt (kudos for helping secure the internet! 🍻). Here's the offical guide.
sudo certbot --nginx
Simple right? After that, the Ghost server was ready to be configured. I was ready to test away!
I wanted to see how good the default HTTPS config was, so I ran a report using SSL Labs:
An A rating using a default config? Not bad! After some quick server hardening, I determinded the site was ready!
The total cost of this deployment was $13. $10/month for the droplet, and $3/year for the domain name. Having sysadmin skills definitely helped me breeze through the setup but I think anyone could do the same with enough time and research.
Conclusion
I choose DigitalOcean over AWS because I had a previous project on AWS and felt their interface was extremely.... convoluted. I wanted to try a DigitalOcean deployment to see the difference. I'm not shilling for DigitalOcean, but their interface is much easier to use overall. AWS definitely has way more advanced features, but I feel that unless those features are needed, DigitalOcean is perfectly suitable for non-business usage.