Is it a badly drawn pentagram to summon the devil? No, it's a FAF architecture diagram!


When I talk about FAF I usually say it has the complexity of enterprise company scale. Then people chuckle a little, but they don't really understand what that means.

I am currently evaluating moving the FAF Docker-Compose stack to Kubernetes (more on that in a future blog post), but it's really hard to understand and estimate such a project without knowing what you are actually dealing with.

So I finally took the time and made an architecture diagram showing all applications running in our FAF Docker-Compose stack and their dependencies to each other.

Drawing such a thing is almost impossible so I used graphviz instead. And this is the result:


Service Overview

Some edges are unnamed to avoid repetition:

  • Traefik serves all references services as reverse proxy
  • Prometheus scrapes referenced other services for metrics
  • Postal sends emails for all referenced services

The pentagram diagram is using the "circo" algorithm of graphviz. Alternatively the "dot" algorithm also give usable results (all others don't give readable results):


I won't bother explaining all of these application names. If you are interested, just google them and you will find something. šŸ™‚

"Nerds have a really complicated relationship with change: Change is awesome when WE'RE the ones doing it. As soon as change is coming from outside of us it becomes untrustworthy and it threatens what we think of is the familiar."
ā€“ Benno Rice