Deploying on-site¶
Enterprise customers have the option to run the Atfinity application in their own infrastructure. This guide explains how to do this and what the necessary requirements are.
General Architecture¶
Atfinity is a client-server web application. It broadly consists of a web server serving a web frontend, and an API backend with which the browser communicates. If you are running Atfinity headless, you will mostly communicate with our API, which is part of the backend.
Atfinity supports multiple infrastructure modes:
| Mode | Servers | Description |
|---|---|---|
| 1-Tier | CORE | Backend, Frontend, Database, and File Storage all run on one server |
| 2-Tier | CORE + DATA | Backend and Frontend on CORE; Database and File Storage on DATA |
| 3-Tier | CORE + WEB + DATA | Backend on CORE; Frontend on WEB; Database and File Storage on DATA |
| X-Tier + EUW | Any of the above + EUW | Adds the End User Wizard (EUW) on a separate server to any tier setup |
The EUW is always deployed on a separate server as it is typically the most exposed component.
You have two general deployment options:
- Kubernetes via helm chart (recommended)
- Single servers via docker-compose
Third-party software¶
The Atfinity images include third-party software. Every component, the licence it is distributed under, and the full
text of each of those licences is listed in THIRD_PARTY_NOTICES.md. It ships with whichever route you deploy
through: inside the helm chart, where helm install also prints where to find it, and in the docker-compose file set.
That file also carries Atfinity's written offer to provide the corresponding source code for the components whose licences require it.
CDN and Security Tools (e.g. CloudFlare)¶
Atfinity is able to handle a wide range of CDN and security tools in front of its components.
Note, however, that Atfinity works best if content is not cached, as almost no transferred data stays valid for more
than a minute.
We therefore recommend to disable all caches and only use security, not performance, tools of your infrastructure
tooling in combination with Atfinity.