Creating a Serverless Resume on Oracle Cloud Infrastructure
Introduction
2 years ago, I read a post from Nathan Glover who built a serverless resume using AWS Amplify (see his aws-amplify-resume repository). At the time I used his project to create and deploy my own resume on S3 and this was pretty cool.
A few days ago, I was reviewing this project and wondering how I could now use Oracle Cloud Infrastructure to deploy my resume by using mostly Free resources. And this is the origin of this post.
Oracle Cloud Infrastructure (OCI) provides lots of services today and a lot of them are available in the Always Free Tiers:
For my Serverless Resume, I will be using the following services:
- Autonomous Json Database (Free Tier) => to store my resume data as Json data in Collections
- Object Storage bucket (Free Tier) => to store my website built with React
- Oracle Cloud Functions (Free Tier for the first 2 million/Month ) => to retrieve the data using SODA Rest services
- API Gateway (2,5596 โฌ for 1 Million API Calls/Month) => to expose my Function
I’ll make some changes to the React website built by Nathan Glover for the website: it was initially developed using GraphQL and I switched to direct REST API calls the API Gateway using axios
Architecture
Setup
I won’t go into the details of the setup as I put all the required information in the 2 gitlab projects I created for this:
fn-getresume
This project fn-getresume is an OCI Function to retrieve resume data from an AJD (Autonomous Json Database)
The README.md file describes all the steps to provision your Autonomous Json Database, import your collections data and deploy your function.
front-resume
This project frontend-resume is a React application which calls the API to retrieve the different parts of your resume and display them on a webpage deployed in a bucket.
Again, I think the README.md file does a good job explaining how it works and how you could deploy it on your own.
I hope this short post could be useful to you and give you a better understanding of the components involved. It shows how powerful OCI could be and the kind of Web Native solutions you can build on top of it.
๐ป Many thanks to Nathan Glover who built the fondation for this : see his aws-amplify-resume repository.
That’s all ๐ (for the moment) ๐