"Deployment from Scratch" offers a comprehensive introduction to the world of web application deployment. This resource guides you through the entire process, from foundational concepts to advanced server and database configurations. By the end of this book, you'll grasp the essentials of running web applications in production, learn to configure virtual Linux servers and containers, and deploy web servers and databases, all through a clear, structured approach that minimizes guesswork.
Course Highlights
What will you get?
- Condensed knowledge from multiple books in one edition, crafted by a former professional Linux package developer.
- From theory to practice: Transition from understanding network fundamentals to mastering the encryption of database backups.
- 26 chapters of in-depth content covering every essential aspect of web application deployment.
- Hands-on demonstrations with Bash scripts to help you understand reliable system settings, secure configurations, and internal processes without relying on complex deployment tools.
- A collection of checklists and cheat sheets for future reference.
- Includes Dockerfile examples for you to adapt and inspire your projects.
Target Audience
This book caters to software developers, engineers, indie hackers, and anyone involved in web application development. It provides crucial insights into server administration, infrastructure setup, and application deployment.
Whether you're a beginner eager to learn the basics, or an experienced developer aiming to enhance your deployment skills, this book offers valuable knowledge. Although Ruby and Python are used for coding examples, the material is 90% language-independent, benefiting developers using JavaScript, Go, PHP, Rust, and more. The examples are tailored to Rocky Linux 8 and Fedora.
Key Demonstrations
- Deploying a static website with support for TLS and Let's Encrypt certificates.
- Deploying a full Rails application on a single server:
- Utilizing UNIX sockets
- Configuring PostgreSQL with ident authentication
- Supporting WebSockets
- Implementing automatic deployment with git push
- Creating administrative scripts for server connections, file, and database backups.
- PostgreSQL cluster deployment, featuring:
- Automatic system updates and log rotations
- TLS setup with custom certificates
- Scripts for comprehensive backup and restoration at the cluster level.
Conclusion
By mastering the content in this book, you will be equipped to independently deploy web applications in a production environment, ensuring their reliability, security, and automated management.