Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

freeCodeCamp

Master Full-Stack Docker and CI/CD - Build a Production-Ready Pipeline

via freeCodeCamp

Overview

Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it
Learn to transform a full-stack React, Go, and MongoDB application from local development into a fully containerized production environment with professional CI/CD automation. Master Docker orchestration and environment management using Docker Compose while deploying live applications to Hostinger through both manual and automated deployment methods. Build a complete CI/CD pipeline powered by GitHub Actions that automatically builds and deploys application updates with every code push. Start by setting up the development environment and testing the full-stack web application running on bare metal, then progress through containerizing individual components by creating separate Dockerfiles for server and client applications. Build Docker images, launch containers using docker run commands, and test the dockerized application before creating comprehensive docker-compose.yaml files for orchestration. Update React code to read docker-compose environment variables and extend the configuration to containerize the MongoDB database for complete application isolation. Separate development and production configurations by creating distinct Dockerfiles and docker-compose files, then test the development setup with watch mode for hot reload functionality. Push production Docker images to DockerHub and implement version control workflows by making code updates and managing new releases through GitHub repositories. Complete the deployment process with manual installation on Hostinger using terminal commands, test the containerized web application in the production environment, and culminate with creating GitHub Actions for fully automated deployment through a professional CI/CD pipeline.

Syllabus

- Introduction
- Deploying a full-stack web app to Hostinger using Docker Manager
- Create a CI/CD Pipe-line
- A Deep Look at Deployment
- Clone the full-stack Web App from GitHub repo
- Setup Development Environment
- Test full-stack Web App Running on Bare Metal Dev machine
- Lets Containerise our Web App’s Components
- Create Dockerfiles for Server and Client Components
- Build Docker Images and Launch Containers docker run
- Test Dockerized Web Application
- Create docker-compose.yaml file
- Launch Containerised Web App using docker-compose
- Test Containerzed Web App Launched through docker-compose
- Update React Code to Read docker-compose env variables
- Update docker-compose.yaml to Containerise MongoDB Database
- Test Web App with Containerised MongoDB Database
- Separate Dockerfiles into Dev and Production Versions
- Separate docker-compose files into Dev and Production Versions
- Test Run docker-compose.dev in Watch Mode hot reload feature
- Push Production Docker Images to DockerHub
- Make Code Update to Golang Go code
- Push Updated Code to new GitHub Repo
- Build New Version of Docker Images and push to DockerHub
- Manual Installation on Hostinger using Terminal - One Time Setup
- Test Containerized Web App Running on Hostinger
- Create GitHub Action to Automate Deployment using a CI/CD Pipe-line

Taught by

freeCodeCamp.org

Reviews

Start your review of Master Full-Stack Docker and CI/CD - Build a Production-Ready Pipeline

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.