{"id":37,"date":"2023-12-15T01:22:08","date_gmt":"2023-12-15T01:22:08","guid":{"rendered":"https:\/\/dev.justindaigle.com\/blog\/?p=37"},"modified":"2023-12-15T03:41:31","modified_gmt":"2023-12-15T03:41:31","slug":"adventures-in-oracle-cloud-almost-like-a-mini-tutorial","status":"publish","type":"post","link":"https:\/\/justindaigle.com\/blog\/?p=37","title":{"rendered":"Adventures in Oracle Cloud &#8211; Almost Like a Mini-Tutorial"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Hey.<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">It&#8217;s been awhile, hasn&#8217;t it? Well, to put things short, some lowlife ransomware scammer got to my old server, and I was pretty lazy about backups at the time, what with everything else going on in my life. And much as I always do, I take forever to get around to anything. In this case, probably about on the order of two years. As a matter of fact, the inspiration to even put something here for real came just last night (well, the night before I started writing this, because again, it&#8217;ll probably be days or more between when I put the pen to the metaphorical paper and when this is actually live). And while I <em>could<\/em> reclaim all of my old content by meticulously copying and pasting it all from a very well-kept archive <a href=\"https:\/\/web.archive.org\/web\/20200730072650\/http:\/\/justindaigle.com\/blog\/\">over on the Wayback Machine<\/a>, I&#8217;ve actually decided I just don&#8217;t want to. A lot of that content reflects me as I was back then. And I&#8217;d like to think I&#8217;m a different person now than I was then. In the interests of preservation of my own personal history, and of transparency, I&#8217;ve linked to that archive anyway. But I think that short-sighted scammer didn&#8217;t realize something. Maybe I needed a push toward a new start. They set out to ruin my day. Instead, they helped me learn a set of important life lessons. And this new space, much like the proverbial phoenix, has risen from the ashes of those lessons.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Then what, pray tell, led to the sudden inspiration to create a new blog yesterday all of a sudden? Quite simply put, it was some random reddit discussion, that I&#8217;ve already lost. I often read up on the state of ARM servers. It&#8217;s an architecture that&#8217;s come a long way since powering the &#8220;toy&#8221; devices I fondly remember from when I was a kid, such as my old Dell Axim. To see it powering a &#8220;real&#8221; computer, like the MacBook Pro I&#8217;m currently writing this on, has been quite a journey. And I think my childhood memories lead me to root for what was once this underdog, to fulfill some dream of my childhood devices having &#8220;grown up&#8221; much like I have. While in one of these discussions, someone had mentioned Oracle Cloud&#8217;s free tier. Now I&#8217;m probably not as well-read on these events as I&#8217;d like to think I am, since I honestly had no idea Oracle was even a cloud provider. I use AWS at work, but avoid it for any personal project due to the fact that it seems to be the most expensive player in the game. For a personal project of mine that I&#8217;ve shelved and unshelved multiple times over the past couple of years, I use Google Cloud. Mostly sitting idle on there, it costs me about $40 a month.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Maybe the fact that it&#8217;s such an underdog that I wasn&#8217;t even familiar with it is exactly <em>why<\/em> Oracle offers such a generous free tier. Of particular interest to me was their compute offerings. They offer two AMD-based boxes, each with one virtual CPU and 1GB of RAM, free forever. Much more interestingly, they offer an ARM-based box with up to four virtual CPUs and 24GB of RAM, also free forever (though it&#8217;s a bit harder to get your hands on &#8211; more on that later). It&#8217;s also a bit &#8220;higher-tier&#8221; in general &#8211; here&#8217;s a speed test result from the AMD instance hosting what you&#8217;re reading now.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img decoding=\"async\" src=\"https:\/\/www.speedtest.net\/result\/c\/17451492-9ebf-4cca-8d03-be9c03d4da5a.png\" alt=\"\" style=\"width:494px;height:auto\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">I got started yesterday by signing up for my free account, then slowly navigating OCI&#8217;s somewhat cumbersome web UI. I then attempted to spin up the ARM-based holy grail that I was seeking out &#8211; to no avail. I tried tweaking my settings over and over, only to receive availability errors each time. Finally giving up, I attempted to spin up one of the AMD-based instances to see if those would actually work. Work, they did. However, my next actions also ran into issues. Given that managing a Linux web server tends to be a bit cumbersome without some sort of tooling &#8211; think cPanel from ye olde days, my next goal was to install some kind of web-based admin panel on the thing. After many failed attempts with many panels, and having to trash the server over and over again, I then made a realization. I have two of them. Maybe I can take advantage of this. So I then established one of them as a &#8220;dev environment&#8221; where I can try things out and trash as necessary, while only bringing things over to my main environment as they&#8217;re ready. With this in mind, I eventually managed to get the <a href=\"https:\/\/hestiacp.com\">Hestia Control Panel<\/a> set up on the dev box. Except for some reason, it would hang indefinitely and not load. Eventually I realized it&#8217;s probably a firewall issue. Fortunately, I <a href=\"https:\/\/techoverflow.net\/2021\/08\/19\/how-to-disable-virtual-cloud-network-firewall-on-oracle-cloud\/\">eventually located a solution<\/a>. Okay cool. I have my dev box, and I now have some good tooling to manage it with.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Next up, how should I best go about installing WordPress on it? Turns out it has a built-in installer for several common software packages, with WordPress being one of them. I tried, and failed at first, to use this function. After doing much additional research, it turns out that the built-in admin account has several limitations. I&#8217;d created my own account, but in an attempt to be able to manage the default site it created from it, I&#8217;d changed several settings. The relevant one here was I&#8217;d assigned the <code>system<\/code> package to it, which essentially makes it act like the built-in admin user. Once I removed this setting, I was able to run the WordPress install pretty effortlessly.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It seems like WordPress has changed a lot in the years since I&#8217;ve used it last. I tried and failed to rescue my old theme, and, failing that, chose to just go for a new-ish look. I eventually landed on the Spacious theme I&#8217;m using now, with a large number of customizations. It feels familiar, yet different. And here we are! It feels good to be back.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Oh, right. What of the ARM box I&#8217;d originally sought out? I randomly tried again to create it tonight. No luck. I tried another availability domain, fully expecting it to fail again as it had the night before. Except I was then greeted with the typical provisioning processing screen &#8211; success! As I&#8217;ve already indicated, I&#8217;m not hosting this site on it. It&#8217;s kind of overkill for my humble personal nonsense. But I&#8217;ll probably use it for other fun, random endeavors. It seems like it certainly packs a punch at least!<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img decoding=\"async\" src=\"https:\/\/www.speedtest.net\/result\/c\/18a302a2-2dc9-46c1-b7ea-52d9f597fbf4.png\" alt=\"\" style=\"width:517px;height:auto\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">So I&#8217;ve got some new toys, and they&#8217;ve cost me absolutely nothing. Hopefully if you&#8217;re reading this, you can find some inspiration for your own setup here. And hopefully in the coming days, I can find the inspiration to actually post more stuff here. I&#8217;ve got this space &#8211; I&#8217;d may as well use it, eh?<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hey. It&#8217;s been awhile, hasn&#8217;t it? Well, to put things short, some lowlife ransomware scammer got to my old server, and I was pretty lazy about backups at the time, what with everything else going on in my life. And<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-37","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/justindaigle.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/37","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/justindaigle.com\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/justindaigle.com\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/justindaigle.com\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/justindaigle.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=37"}],"version-history":[{"count":10,"href":"https:\/\/justindaigle.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/37\/revisions"}],"predecessor-version":[{"id":49,"href":"https:\/\/justindaigle.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/37\/revisions\/49"}],"wp:attachment":[{"href":"https:\/\/justindaigle.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=37"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/justindaigle.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=37"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/justindaigle.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=37"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}