Project - Web from scratch
Learning by doing
-
Provision single machine
- Firewall config
-
Register domain
- Point to your own name server
-
Write deployment script
- Clones repo, if not already cloned
- Pulls from main branch
- Installs toolchain, if not already installed
- Builds binaries
- Scp to server(s)
- Ssh to restart services
-
Develop DNS server
- Based on RFC
- JSON-based config
- Config is kept on a branch, not main
-
Develop web server
- Based on RFCs
- JSON-based config
-
Develop API service
- Serve site stats
-
Web content served
- Statically generated (Astro)
- With dynamic content mixed in
Resources
DNS
https://www.techtarget.com/searchnetworking/definition/domain-name-system
Private name server on Hover
https://support.appliedi.net/kb/creating-private-name-servers-at-hover-com/