Web domain to website: AWS
Where we are, and our target
We made a small demo and just bought the domain, corner.builders, which points to nothing for now. Our next task is to choose what we do with it, how to organize the infrastructure around it, and make a dummy landing page. If all of this works, then the website will be available to all of you. Then we just need to update/improve the landing page into something useful! Let's start.
Cloud-based web architecture.
Static web hosting
What we need is really quite simple. We want the user to be able to generate printable images with their devices. By leveraging the power of their devices (like pc or phones), we should not need a computing server. Also we do not need a database to store user profiles. A user should just be able to load the website, make their design, get the images output in a 2 minute session and not store state on some servers. I also like the privacy idea of not sending any private data like personal image to some server so naturally we will apply that principle to ourselves and not do it for our website. User get the functionality, execute, then leave happy !
We can deduce from this that we just need some static web hosting.
S3 for storing the website content
In the AWS ecosystem we can do this with the s3 service. We can make a "s3 bucket" with our static website content, that can then be served.
However, just using S3 has some drawbacks when serving content outside of the aws ecosystem. Most notably using custom SSL certificates for your own domain is not possible directly with S3 (used for encryption, important for security, good stuff).
CloudFront for global delivery
To remediate this, we will use the CloudFront service, which is a content delivery service with several benefits (even if most don't apply for such a small scale application like ours). The main benefits for us would be:
Certificate Manager
This aws service allows to easily get/renew your certificates, almost a 1-clicker. Your certificate requests will be validated through DNS, and the appropriate record will also be auto generated in Route53.
领英推荐
Route53
To route dns queries to our CloudFront distribution (so redirecting corner.builders to the adequate aws resources).
To conclude
I'm not making a full tutorial on all the different AWS configuration, just dropping some pointers on what services to use that worked well for me (the AWS service list is massive, and there are definitely other ways to do this). The AWS documentation is also quite extensive and readable, making the whole process not so tedious.
But wait..!
What is even the website we are talking about?
for now I just put the simplest of index.html in the s3 bucket,
Accessible here: corner.builders, proving the "system works".
What's next?
As our website content will be the result of writing code, the gitlab CI/CD pipeline to automatically deploy code/compiled code to the live website is coming next!
Stay tuned!