# koonisetty/docker-development-youtube-series architecture

> Architecture diagram of the GitHub repository koonisetty/docker-development-youtube-series, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-28). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/koonisetty/docker-development-youtube-series
- Repository: https://github.com/koonisetty/docker-development-youtube-series

## Overview

This repository is a collection of hands-on engineering and DevOps walkthroughs, not one integrated application. Its examples cover Kubernetes, containers, monitoring, logging, service meshes, messaging, and language-specific development. The clearest end-to-end runtime flow in the sampled code is the traced playlists API, which loads playlist data from Redis and fetches each referenced video from a videos API. Other samples are independent demonstrations. Some documented capabilities have no sampled implementation, so their wiring is intentionally not inferred.

Main entry points: [`tracing/applications-go/videos-api/app.go`](https://github.com/koonisetty/docker-development-youtube-series/blob/master/tracing/applications-go/videos-api/app.go) (Videos API), [`tracing/applications-go/playlists-api/app.go`](https://github.com/koonisetty/docker-development-youtube-series/blob/master/tracing/applications-go/playlists-api/app.go) (Playlists API), [`kubernetes/servicemesh/applications/playlists-api/app.go`](https://github.com/koonisetty/docker-development-youtube-series/blob/master/kubernetes/servicemesh/applications/playlists-api/app.go) (Playlists API), [`kubernetes`](https://github.com/koonisetty/docker-development-youtube-series/tree/master/kubernetes) (Kubernetes guides)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_learning["Walkthrough collection"]
end

subgraph group_kubernetes["Kubernetes examples"]
  node_k8s["Kubernetes guides"]
  node_admission["Admission webhook<br/>[main.go]"]
  node_secretapp["Config and secret demo<br/>[main.go]"]
end

subgraph group_observability["Observability examples"]
  node_tracing["Tracing sample"]
  node_playlists["Playlists API<br/>[app.go]"]
  node_videos["Videos API<br/>[app.go]"]
  node_videosnet[".NET Videos API"]
  node_prometheus["Prometheus demos"]
  node_go_metrics["Go metrics app<br/>[main.go]"]
  node_logging["Logging guides"]
end

subgraph group_integration["Service integration"]
  node_servicemesh["Service mesh demos"]
  node_mesh_playlists["Playlists API<br/>[app.go]"]
  node_kafka["Kafka examples"]
  node_kafka_consumer["Kafka consumer<br/>[main.go]"]
  node_rabbit["RabbitMQ examples"]
end

subgraph group_development["Application examples"]
  node_docker["Docker development<br/>[README.md]"]
  node_go_intro["Go video tutorials"]
  node_cli["Video CLI<br/>[main.go]"]
  node_python["Python examples"]
  node_node["Node.js example<br/>[server.js]"]
end

node_engineer(("Engineer"))
node_jaeger["Jaeger"]
node_redis[("Redis")]

node_engineer -->|"studies"| node_k8s
node_engineer -->|"studies"| node_tracing
node_engineer -->|"studies"| node_prometheus
node_engineer -->|"studies"| node_logging
node_engineer -->|"studies"| node_servicemesh
node_engineer -->|"studies"| node_kafka
node_engineer -->|"studies"| node_rabbit
node_engineer -->|"studies"| node_docker
node_engineer -->|"studies"| node_go_intro
node_engineer -->|"studies"| node_python
node_playlists -->|"reads playlists"| node_redis
node_playlists -->|"requests video"| node_videos
node_videos -->|"reads video"| node_redis
node_playlists -->|"reports traces"| node_jaeger
node_videos -->|"reports traces"| node_jaeger
node_videosnet -->|"reads video"| node_redis
node_mesh_playlists -->|"reads playlists"| node_redis
node_mesh_playlists -->|"requests video"| node_videos
node_go_metrics -->|"exposes metrics"| node_prometheus
node_admission -->|"handles admission"| node_k8s
node_kafka_consumer -->|"consumes messages"| node_kafka
node_cli -->|"implements tutorial"| node_go_intro

click node_k8s "https://github.com/koonisetty/docker-development-youtube-series/tree/master/kubernetes"
click node_admission "https://github.com/koonisetty/docker-development-youtube-series/blob/master/kubernetes/admissioncontrollers/introduction/sourcecode/main.go"
click node_secretapp "https://github.com/koonisetty/docker-development-youtube-series/blob/master/golang/src/main.go"
click node_tracing "https://github.com/koonisetty/docker-development-youtube-series/tree/master/tracing"
click node_playlists "https://github.com/koonisetty/docker-development-youtube-series/blob/master/tracing/applications-go/playlists-api/app.go"
click node_videos "https://github.com/koonisetty/docker-development-youtube-series/blob/master/tracing/applications-go/videos-api/app.go"
click node_videosnet "https://github.com/koonisetty/docker-development-youtube-series/blob/master/tracing/applications-go/videos-api-netcore/src/Controllers/VideosController.cs"
click node_prometheus "https://github.com/koonisetty/docker-development-youtube-series/tree/master/monitoring/prometheus"
click node_go_metrics "https://github.com/koonisetty/docker-development-youtube-series/blob/master/monitoring/prometheus/go-application/main.go"
click node_logging "https://github.com/koonisetty/docker-development-youtube-series/tree/master/monitoring/logging"
click node_servicemesh "https://github.com/koonisetty/docker-development-youtube-series/tree/master/kubernetes/servicemesh"
click node_mesh_playlists "https://github.com/koonisetty/docker-development-youtube-series/blob/master/kubernetes/servicemesh/applications/playlists-api/app.go"
click node_kafka "https://github.com/koonisetty/docker-development-youtube-series/tree/master/messaging/kafka/applications"
click node_kafka_consumer "https://github.com/koonisetty/docker-development-youtube-series/blob/master/messaging/kafka/applications/consumer/main.go"
click node_rabbit "https://github.com/koonisetty/docker-development-youtube-series/tree/master/messaging/rabbitmq/applications"
click node_docker "https://github.com/koonisetty/docker-development-youtube-series/blob/master/README.md"
click node_go_intro "https://github.com/koonisetty/docker-development-youtube-series/tree/master/golang/introduction"
click node_cli "https://github.com/koonisetty/docker-development-youtube-series/blob/master/golang/introduction/part-4.commandline/videos/main.go"
click node_python "https://github.com/koonisetty/docker-development-youtube-series/tree/master/python"
click node_node "https://github.com/koonisetty/docker-development-youtube-series/blob/master/nodejs/src/server.js"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_k8s,node_admission,node_secretapp,node_redis toneAmber
class node_tracing,node_playlists,node_videos,node_videosnet,node_prometheus,node_go_metrics,node_logging toneMint
class node_servicemesh,node_mesh_playlists,node_kafka,node_kafka_consumer,node_rabbit toneRose
class node_docker,node_go_intro,node_cli,node_python,node_node,node_engineer,node_jaeger toneIndigo
```

## Components

### Kubernetes examples

- [Kubernetes guides](https://github.com/koonisetty/docker-development-youtube-series/tree/master/kubernetes): `kubernetes`
- [Admission webhook](https://github.com/koonisetty/docker-development-youtube-series/blob/master/kubernetes/admissioncontrollers/introduction/sourcecode/main.go): `kubernetes/admissioncontrollers/introduction/sourcecode/main.go`
- [Config and secret demo](https://github.com/koonisetty/docker-development-youtube-series/blob/master/golang/src/main.go): `golang/src/main.go`

### Observability examples

- [Tracing sample](https://github.com/koonisetty/docker-development-youtube-series/tree/master/tracing): `tracing`
- [Playlists API](https://github.com/koonisetty/docker-development-youtube-series/blob/master/tracing/applications-go/playlists-api/app.go): `tracing/applications-go/playlists-api/app.go`
- [Videos API](https://github.com/koonisetty/docker-development-youtube-series/blob/master/tracing/applications-go/videos-api/app.go): `tracing/applications-go/videos-api/app.go`
- [.NET Videos API](https://github.com/koonisetty/docker-development-youtube-series/blob/master/tracing/applications-go/videos-api-netcore/src/Controllers/VideosController.cs): `tracing/applications-go/videos-api-netcore/src/Controllers/VideosController.cs`
- [Prometheus demos](https://github.com/koonisetty/docker-development-youtube-series/tree/master/monitoring/prometheus): `monitoring/prometheus`
- [Go metrics app](https://github.com/koonisetty/docker-development-youtube-series/blob/master/monitoring/prometheus/go-application/main.go): `monitoring/prometheus/go-application/main.go`
- [Logging guides](https://github.com/koonisetty/docker-development-youtube-series/tree/master/monitoring/logging): `monitoring/logging`

### Service integration

- [Service mesh demos](https://github.com/koonisetty/docker-development-youtube-series/tree/master/kubernetes/servicemesh): `kubernetes/servicemesh`
- [Playlists API](https://github.com/koonisetty/docker-development-youtube-series/blob/master/kubernetes/servicemesh/applications/playlists-api/app.go): `kubernetes/servicemesh/applications/playlists-api/app.go`
- [Kafka examples](https://github.com/koonisetty/docker-development-youtube-series/tree/master/messaging/kafka/applications): `messaging/kafka/applications`
- [Kafka consumer](https://github.com/koonisetty/docker-development-youtube-series/blob/master/messaging/kafka/applications/consumer/main.go): `messaging/kafka/applications/consumer/main.go`
- [RabbitMQ examples](https://github.com/koonisetty/docker-development-youtube-series/tree/master/messaging/rabbitmq/applications): `messaging/rabbitmq/applications`

### Application examples

- [Docker development](https://github.com/koonisetty/docker-development-youtube-series/blob/master/README.md): `README.md`
- [Go video tutorials](https://github.com/koonisetty/docker-development-youtube-series/tree/master/golang/introduction): `golang/introduction`
- [Video CLI](https://github.com/koonisetty/docker-development-youtube-series/blob/master/golang/introduction/part-4.commandline/videos/main.go): `golang/introduction/part-4.commandline/videos/main.go`
- [Python examples](https://github.com/koonisetty/docker-development-youtube-series/tree/master/python): `python`
- [Node.js example](https://github.com/koonisetty/docker-development-youtube-series/blob/master/nodejs/src/server.js): `nodejs/src/server.js`

### Other components

- **Engineer**
- **Jaeger**
- **Redis**

## Connections

- Engineer → Kubernetes guides: studies
- Engineer → Tracing sample: studies
- Engineer → Prometheus demos: studies
- Engineer → Logging guides: studies
- Engineer → Service mesh demos: studies
- Engineer → Kafka examples: studies
- Engineer → RabbitMQ examples: studies
- Engineer → Docker development: studies
- Engineer → Go video tutorials: studies
- Engineer → Python examples: studies
- Playlists API → Redis: reads playlists
- Playlists API → Videos API: requests video
- Videos API → Redis: reads video
- Playlists API → Jaeger: reports traces
- Videos API → Jaeger: reports traces
- .NET Videos API → Redis: reads video
- Playlists API → Redis: reads playlists
- Playlists API → Videos API: requests video
- Go metrics app → Prometheus demos: exposes metrics
- Admission webhook → Kubernetes guides: handles admission
- Kafka consumer → Kafka examples: consumes messages
- Video CLI → Go video tutorials: implements tutorial
