AI-powered learning
Save this course
Building a REST App with Go, Gin, and Docker
Gain insights into creating RESTful web apps using Go, Gin, and Docker. Learn about HTTP, containerization, and best practices for scalable, maintainable, and efficient web apps.
4.4
39 Lessons
8h
Join 2.9 million developers at
Join 2.9 million developers at
LEARNING OBJECTIVES
- An understanding of HTTP and its application in building a web app
- Familiarity with core components of Docker, including building images and managing the app config through them
- Hands-on experience in dockerizing and building a web app using Go
- The ability to improve the development, release, and deployment process using structured logs, efficient build process, and smaller Docker images
Learning Roadmap
2.
Introduction to Basics of Go and Web Development
Introduction to Basics of Go and Web Development
Look at Go's advantages, web app basics, practical programming, and foundational Go concepts.
3.
Building a Simple Go App
Building a Simple Go App
8 Lessons
8 Lessons
Work your way through setting up, managing dependencies, adding logic, and creating a UI for a Go web app.
4.
Testing the App
Testing the App
4 Lessons
4 Lessons
Apply your skills to unit testing, web app testing, and API endpoint verification using cURL.
5.
Dockerizing the Web App
Dockerizing the Web App
8 Lessons
8 Lessons
Dig deeper into containerizing and managing multi-container apps using Docker and Docker Compose.
6.
Can We Improve on the Docker Image?
Can We Improve on the Docker Image?
2 Lessons
2 Lessons
Follow the process of optimizing Docker build times and reducing image sizes using multistage builds.
7.
Making the App Production Ready
Making the App Production Ready
6 Lessons
6 Lessons
Master the steps to make your Go, Gin, and Docker app production-ready and test-efficient.
9.
Appendix
Appendix
3 Lessons
3 Lessons
Get started with setting up Go, Docker, and caching for efficient app development.
Certificate of Completion
Showcase your accomplishment by sharing your certificate of completion.
Complete more lessons to unlock your certificate
Developed by MAANG Engineers
ABOUT THIS COURSE
Web apps are used in all walks of life. Many tech companies have already adopted Go as the main language for their backends. As a result, there is a high demand for developers who can create them, especially those with expertise in modern technologies like Go and Docker.
This course is a guide for creating RESTful web apps using Go and managing them through Docker. You’ll start with learning about HTTP and how it sends requests and responses to interact with an app’s server. You’ll learn about the basics of Go and its applications in web development. You’ll create an HTTP web server using Go’s popular web framework, Gin. Next, you’ll use Docker to containerize your app and manage its configuration. You’ll finish by learning some best practices that will make your apps easy to debug and maintain, saving costs in terms of time and effort.
By the end of the course, you’ll become an expert in developing containerized web apps in Go that are efficient and easily scalable, and maintainable.
ABOUT THE AUTHOR
Sangeeta Singh
I am a backend engineer with 9 years of experience building highly scalable and maintainable software. A significant chunk of my experience is in Golang, Python, Java, and C++ though I am always excited to learn new stuff!
Trusted by 2.9 million developers working at companies
A
Anthony Walker
@_webarchitect_
E
Evan Dunbar
ML Engineer
S
Software Developer
Carlos Matias La Borde
S
Souvik Kundu
Front-end Developer
V
Vinay Krishnaiah
Software Developer
Built for 10x Developers
No Passive Learning
Learn by building with project-based lessons and in-browser code editor


Personalized Roadmaps
The platform adapts to your strengths & skills gaps as you go


Future-proof Your Career
Get hands-on with in-demand skills


AI Code Mentor
Write better code with AI feedback, smart debugging, and "Ask AI"




MAANG+ Interview Prep
AI Mock Interviews simulate every technical loop at top companies


Free Resources