An open API service indexing awesome lists of open source software.

https://github.com/mohitjain0810/docker

This README contains essential project commands for installation, usage, testing, and deployment, ensuring users can easily set up and run the project. ๐Ÿš€
https://github.com/mohitjain0810/docker

docker docker-container docker-image docker-registry docker-swarm dockerfile dockerhub

Last synced: 8 months ago
JSON representation

This README contains essential project commands for installation, usage, testing, and deployment, ensuring users can easily set up and run the project. ๐Ÿš€

Awesome Lists containing this project

README

          

# ๐Ÿณ Ultimate Docker Guide & Command Reference

![Docker](https://img.shields.io/badge/Docker-2496ED?style=for-the-badge&logo=docker&logoColor=white)
![CI/CD Ready](https://img.shields.io/badge/CI%2FCD-Ready-brightgreen?style=for-the-badge)

A complete Docker guide with **all essential commands**, from building images to managing containers and Docker Compose. Perfect for developers and teams to hit the ground running with containerization.

---

## ๐Ÿš€ What is Docker?

Docker is an open-source platform that packages applications and their dependencies into lightweight containers. Containers ensure consistency across development, testing, and production.

---

## ๐Ÿ—‚๏ธ Table of Contents

1. [โœ… Verify Installation](#-verify-installation)
2. [๐Ÿ”ง Basic Docker Commands](#-basic-docker-commands)
3. [๐Ÿ“ฆ Image Management](#-image-management)
4. [๐Ÿš€ Container Management](#-container-management)
5. [๐Ÿ™ Docker Compose](#-docker-compose)
6. [๐Ÿงน Maintenance & Cleanup](#-maintenance--cleanup)
7. [๐Ÿž Troubleshooting & Debugging](#-troubleshooting--debugging)
8. [โ“ FAQ](#-faq)

---

## โœ… Verify Installation

```bash
docker --version
docker-compose --version # For multi-container apps

```

---

## ๐Ÿ”ง Basic Docker Commands

```bash
# Pull an image from Docker Hub
docker pull

# Build an image from Dockerfile
docker build -t : .

# Run a container from an image
docker run -d -p : :

# List running containers
docker ps

# List all containers (including stopped)
docker ps -a

# Stop a running container
docker stop

# Start a stopped container
docker start

# Remove a stopped container
docker rm

# Remove an image
docker rmi :

# View container logs
docker logs

# Exec into a running container
docker exec -it sh

```

---

## ๐Ÿ“ฆ Image Management
```bash
# List local images
docker images

# Tag an image
docker tag : /:

# Push an image to Docker Hub
docker login
docker push /:

# Pull an image from Docker Hub
docker pull /:

# Remove unused images
docker image prune

# Remove all dangling (untagged) images
docker image prune -a
```

---

## ๐Ÿš€ Container Management

```bash
# Run a container with environment variables
docker run -d \
--name \
-p : \
-e "ENV_VAR=value" \
-v : \
:

# List all containers
docker ps -a

# Stop a container
docker stop

# Remove a container
docker rm

# Check container logs
docker logs

# Check resource usage
docker stats

# Inspect container metadata
docker inspect
```

---

## ๐Ÿ™ Docker Compose
Example docker-compose.yml:

```bash
version: "3.8"
services:
web:
build: .
ports:
- "5000:5000"
environment:
- ENV_VAR=value
depends_on:
- redis
redis:
image: redis:alpine
```

Common Docker Compose Commands
```bash
# Start services
docker-compose up -d

# Stop services
docker-compose down

# View logs
docker-compose logs

# Rebuild services
docker-compose up --build

# List services
docker-compose ps
```

---

## ๐Ÿงน Maintenance & Cleanup
```bash
# Remove unused containers, networks, images, and caches
docker system prune

# Remove all stopped containers
docker container prune

# Remove dangling (untagged) images
docker image prune

# Remove unused volumes
docker volume prune

# Remove all unused resources
docker system prune -a
```

---
## ๐Ÿž Troubleshooting & Debugging
```bash
# Port in use
lsof -i : && kill $(lsof -ti :)

# Permission issues
docker run --user $(id -u) ...

# Check logs
docker logs -f

# View container details
docker inspect

# Monitor container stats
docker stats
```
---

## โ“ FAQ
1. What is Docker?
- A platform to build, ship, and run applications in containers.

2. Why use Docker?
- Ensures consistency, portability, and scalability.

3. Where to use Docker?
- Development, testing, production, and CI/CD pipelines.