Docker Containers Pair Presentation
Docker Presentation

Docker Containers

Making Development Easier

S1
Speaker 1
Jefri Calderin
S2
Speaker 2
Diego Ospino
Press Space or → to navigate
Jefri Calderin — Introduction
01 / The Problem

The Classic Developer Dilemma

"Have you ever worked on a project that works on your computer, but does not work on another computer?"

💻

Developer's Computer

"Works on my machine!"
  • ✅ Node.js runtime correctly installed
  • ✅ Local libraries and dependencies present
  • ✅ Configured environment variables
  • ✅ Application starts successfully
⚠️

Another Computer / Server

"Error: Missing dependency / Crash"
  • ❌ Different or outdated Node.js version
  • ❌ Missing system dependencies
  • ❌ Configuration mismatch between environments
  • ❌ Deployment failures and wasted debugging time
“

This is a common problem in software development. Docker helps us solve this problem.

Diego Ospino — Overview
02 / Concepts

So, What is Docker?

A tool that packages an application and its dependencies into a container.

What is a Container?

A container is an isolated environment where our application can run reliably without conflicts with host software.

Packaging Dependencies

For example, a Node.js application needs Node.js, libraries, and configuration. With Docker, we package these elements together.

The Main Benefit: Consistency

Developers can use the exact same environment on their computers, on a test server, or in the cloud.

“

With Docker, we can package these elements together. This makes the application easier to run on different computers.

Jefri Calderin — Technical Deep Dive
03 / Architecture

How Docker Works: The 3 Core Concepts

We write a Dockerfile → Then we build an image → Finally we run a container.

Docker Workflow Diagram: Dockerfile to Docker image to Docker container Figure 1: Docker Workflow — From Instructions to Running Container
Concept 1

1. Dockerfile

Contains text instructions and commands to create our application image.

Concept 2

2. Docker Image

An immutable package containing our application code, runtime, and dependencies.

Concept 3

3. Docker Container

A running instance of an image. The live, executed application in an isolated environment.

Diego Ospino — Live Demo
04 / Demo

Live Demo: Node.js inside Docker

A simple example: we build the image and run the containerized web server.

# 1. Official lightweight Node.js base image FROM node:22-alpine # 2. Set the working directory WORKDIR /app # 3. Copy application files into the image COPY server.js . # 4. Expose the communication port EXPOSE 3000 # 5. Start the server when container runs CMD ["node", "server.js"]
const http = require("http"); const server = http.createServer((req, res) => { res.writeHead(200, { "Content-Type": "text/html" }); res.end(` <h1>Hello from Docker!</h1> <p>My application is running inside a container.</p> `); }); server.listen(3000, "0.0.0.0", () => { console.log("Server running on port 3000"); });
# Step 1: Build the image from Dockerfile docker build -t docker-demo . # Step 2: Run the container mapping port 3000 docker run --rm -p 3000:3000 docker-demo # Step 3: Open in web browser # http://localhost:3000
terminal — bash
$ Click "Run Demo" to simulate container build and startup.
http://localhost:3000
Waiting for container execution...
Jefri Calderin — Key Takeaways
05 / Summary

Summary & Key Takeaways

why Docker matters in modern software engineering.

Consistent Environments

Docker helps developers create consistent environments across all machines.

Bundled Dependencies

It packages applications and their dependencies together in a single portable unit.

Simpler Deployment

This reduces environment problems and makes deployment much easier and faster.

“Docker helps us build and run applications in a more consistent way.”
Consistent • Isolated • Portable • Reliable
Jefri Calderin & Diego Ospino
06 / Conclusion

Thank You for Listening!

Do you have any questions?

📄 Dockerfile = Instructions
📦 Docker Image = Application Package
🚀 Container = Running Application
🏗️ docker build = Create Image
⚡ docker run = Start Container

We appreciate your attention and welcome your questions and comments.

Docker Workflow Diagram