📋 Container Logs = Debugging Power
Containers fail silently. Container logs reveal everything. Debug, monitor, track problems.
📝 Log Commands
# Show logs docker logs container_name # Follow logs (real-time) docker logs -f container_name # Last N lines docker logs --tail 100 container_name # With timestamps docker logs -t container_name # Since specific time docker logs --since 2024-01-15T10:00:00 container_name # Until specific time docker logs --until 2024-01-15T11:00:00 container_name # Follow with tail docker logs -f --tail 50 container_name # All containers logs docker compose logs docker compose logs -f docker compose logs service_name
🎯 Logging Drivers
# json-file (default) docker run --log-driver json-file --log-opt max-size=10m --log-opt max-file=3 app # syslog docker run --log-driver syslog --log-opt syslog-address=tcp://192.168.1.100:514 app # journald docker run --log-driver journald app # fluentd docker run --log-driver fluentd --log-opt fluentd-address=fluentd:24224 app # awslogs docker run --log-driver awslogs --log-opt awslogs-region=us-east-1 --log-opt awslogs-group=my-group app # gelf (Graylog) docker run --log-driver gelf --log-opt gelf-address=udp://graylog:12201 app # none (no logs) docker run --log-driver none app
✅ Debugging Tips
- Use -f for real-time monitoring
- Use –tail for recent logs
- Set log limits (max-size, max-file)
- Use structured logging (JSON)
- Centralize logs for production
“Container logs reveal everything. Debug, monitor, track. Essential for container management.”
