What is Docker?

What is Docker?

 Docker is a platform that lets you package your applications and all their dependencies into a single container so they run consistently across different environments.

it provide better approach to create and manage build to any platform

Think of it like this:

  • Without Docker: "It works on my machine" problem happens because environments differ.

  • With Docker: You send the same container image that runs exactly the same everywhere — laptop, server, or cloud.

Key points:

  • Image = Blueprint/template of your app.

  • Container = Running instance of that image.

  • Dockerfile = Script with instructions to build an image.

  • Registry – Storage for images (Docker Hub, AWS ECR, Azure ACR)

  • Volume – Persistent storage for containers

  • Network – Communication between containers


2. Install Docker on Windows

  1. Check your Windows Version
    Docker Desktop works best on Windows 10/11 Pro/Enterprise (with WSL2).
    If you have Windows Home, it also works but WSL2 is required.

  2. Download Docker Desktop

  3. Install Docker Desktop

    • Run the installer.

    • Make sure "Use WSL 2 instead of Hyper-V" is checked (for most systems).

    • Follow prompts and restart if required.

  4. Enable WSL 2 (if not already)

    • Open PowerShell (Admin) and run:

      powershell

      wsl --install
    • Restart your system.

  5. Verify Docker Installation
    Open Command Prompt or PowerShell:

    bash

    docker --version

    You should see something like:

    nginx

    Docker version 27.0.3, build abc123

3. Basic Docker Commands


# Get images docker images # Pull image from Docker Hub docker pull nginx # Run container docker run -d -p 8080:80 nginx # List running containers docker ps # Stop container docker stop <container_id> # Remove container docker rm <container_id> # Remove image docker rmi nginx

3. Simple Example: Create & Build with Docker

We’ll create a simple Hello World Python app and run it in Docker.

Step 1 — Create a project folder

bash

mkdir docker-demo cd docker-demo

Step 2 — Create app.py

python

# app.py print("Hello from Docker!")

Step 3 — Create Dockerfile

dockerfile

# Use official Python image FROM python:3.9 # Set working directory WORKDIR /app # Copy all files to container COPY . /app # Run the Python app CMD ["python", "app.py"]

Step 4 — Build the Docker Image

bash

docker build -t my-python-app .

Here:

  • -t my-python-app = Tag/name for your image.

  • . = Build from current folder.

Step 5 — Run the Docker Container

bash

docker run my-python-app

You should see:



Hello from Docker!

🚀 Push Docker Image to Docker Hub (Windows Steps)

1. Open PowerShell or CMD Make sure Docker Desktop is running (check the whale 🐳 icon in your taskbar). 2. Login to Docker Hub Run: docker login It will ask: Username: <your-dockerhub-username> Password: <your-dockerhub-password>

👉 If you enabled 2FA on Docker Hub, you’ll need to create a Personal Access Token from Docker Hub and use that instead of a password. If successful: Login Succeeded

3. Check Your Local Images Run: docker images Example output: REPOSITORY TAG IMAGE ID CREATED SIZE my-python-app latest 1a2b3c4d5e6f 10 minutes ago 123MB
4. Tag the Image You must tag your image with your Docker Hub username and repo name. docker tag my-python-app:latest <your-dockerhub-username>/my-python-app:v1 Example (if your Docker Hub username is shivagautam): docker tag my-python-app:latest shivagautam/my-python-app:v1
Check again: docker images Now you should see: REPOSITORY TAG IMAGE ID CREATED SIZE shivagautam/my-python-app v1 1a2b3c4d5e6f 10 minutes ago 123MB

5. Push the Image Push the tagged image to Docker Hub: docker push <your-dockerhub-username>/my-python-app:v1

Example: docker push shivagautam/my-python-app:v1 You’ll see something like: The push refers to repository [docker.io/shivagautam/my-python-app] v1: Pushed latest: digest: sha256:abc123... size: 1234 6. Verify on Docker Hub Go to https://hub.docker.com Click on Repositories You’ll see my-python-app with tag v1 7. (Optional) Pull on Another Machine You can pull and run your image anywhere: docker pull <your-dockerhub-username>/my-python-app:v1 docker run <your-dockerhub-username>/my-python-app:v1

pull docker image into external drive
docker image
docker save -o myfirst.tar shivadockerind/my-python-app-new:v1

Post a Comment

0 Comments