Docker Logs and Monitoring
12. Docker Logs and Monitoring
Section titled “12. Docker Logs and Monitoring”📋 Viewing Container Logs
Section titled “📋 Viewing Container Logs”# View logs of a containerdocker logs my-container
# Follow logs in real-time (like tail -f)docker logs -f my-container
# Show last N linesdocker logs --tail 100 my-container
# Show logs with timestampsdocker logs -t my-container
# Combine: last 50 lines, with timestamps, followdocker logs -f -t --tail 50 my-container
# Show logs since a timestampdocker logs --since 2024-01-01T10:00:00 my-container
# Show logs in last 30 minutesdocker logs --since 30m my-container📊 Resource Monitoring
Section titled “📊 Resource Monitoring”# Live resource usage (like top for containers)docker stats
# Stats for specific containerdocker stats my-container
# One-time snapshot (no streaming)docker stats --no-stream
# Custom formatdocker stats --format "table {{.Name}}\t{{.CPUPerc}}\t{{.MemUsage}}"Sample docker stats output:
NAME CPU % MEM USAGE / LIMIT MEM % NET I/Oweb-app 0.5% 45.2MiB / 7.77GiB 0.57% 12.5kB / 8.4kBmongodb 1.2% 312MiB / 7.77GiB 3.9% 1.2MB / 890kB🔍 Inspecting Containers
Section titled “🔍 Inspecting Containers”# Full JSON details of a containerdocker inspect my-container
# Get specific field (IP address)docker inspect --format '{{.NetworkSettings.IPAddress}}' my-container
# Get environment variablesdocker inspect --format '{{.Config.Env}}' my-container
# Get mounted volumesdocker inspect --format '{{.Mounts}}' my-container
# View running processes inside containerdocker top my-container
# View port mappingsdocker port my-container🐛 Debugging Common Issues
Section titled “🐛 Debugging Common Issues”# Container exits immediately? Check logs:docker logs my-container
# Container won't start? Check events:docker events --filter container=my-container
# High memory usage? Check stats:docker stats --no-stream my-container
# Can't connect to service? Check ports:docker port my-containerdocker inspect my-container | grep IPAddress