About this course
<p>Taking a web application from local development to a live, secure production environment can be daunting if you've never looked under the hood. We just published a comprehensive course on the freeCodeCamp.org YouTube channel that teaches full-stack deployment from the ground up.</p>
<p>Developed by Imad Saddik, this course takes a hands-on approach. By doing everything yourself before introducing CI/CD automation, you gain a deep foundational understanding of how complex systems are hosted, secured, and maintained.</p>
<p>Here is what the course covers:</p>
<ul>
<li><p><strong>Cloud Infrastructure</strong><br>Provision an Ubuntu server, enforce secure SSH key authentication, and completely disable password and root logins.</p>
</li>
<li><p><strong>Security & Firewalls</strong><br>Configure UFW to block unauthorized ports and set up Fail2Ban to automatically thwart brute-force attacks.</p>
</li>
<li><p><strong>Application Runtimes</strong><br>Install Python and Node.js, configure swap memory for resource-constrained servers, and set up Gunicorn and Supervisor to manage background processes.</p>
</li>
<li><p><strong>Data & Search</strong><br>Self-host a lightweight Meilisearch instance, isolate it with a dedicated system user, and automate daily database snapshots.</p>
</li>
<li><p><strong>Global Delivery</strong><br>Map custom domains with DNS, secure connections with Let's Encrypt SSL certificates, configure Nginx as a reverse proxy, and utilize Cloudflare's CDN for edge caching.</p>
</li>
<li><p><strong>CI/CD Automation</strong><br>Build GitHub Actions pipelines to automate linting, formatting, unit testing, and deployment with atomic virtual environment rollbacks.</p>
</li>
<li><p><strong>Continuous Security</strong><br>Integrate Software Composition Analysis (SCA), Static Application Security Testing (SAST) with Bandit, and Dynamic testing (DAST) using OWASP ZAP.</p>
</li>
<li><p><strong>Observability</strong><br>Monitor CPU, memory, and orphaned processes using Btop, and parse Nginx access logs in real-time with GoAccess to detect and block malicious bot traffic.</p>
</li>
</ul>
<p>By the end of this course, you will have successfully transitioned a Vue.js and FastAPI application from a manual deployment into a fully automated, production-ready pipeline.</p>
<p>You can watch the full course right now on <a href="https://www.youtube.com/watch?v=wY5pQOTsGaA">the freeCodeCamp.org YouTube channel</a> (11-hour watch).</p>
<div class="embed-wrapper"><iframe width="560" height="315" src="https://www.youtube.com/embed/wY5pQOTsGaA" style="aspect-ratio: 16 / 9; width: 100%; height: auto;" title="YouTube video player" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen="" loading="lazy"></iframe></div>