# 120dev/revive-adserver architecture

> Architecture diagram of the GitHub repository 120dev/revive-adserver, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-14). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/120dev/revive-adserver
- Repository: https://github.com/120dev/revive-adserver

## Overview

This repository packages Revive Adserver 5.4.1 for Docker Compose installation. Its documented workflow is to configure the environment, start the containers, then use the web interface to manage campaigns and serve ads; the product also supports campaign reporting and targeting rules. The README describes these capabilities but no application source excerpts are available, so the graph does not infer internal calls or implementation details from the bundled archive.

Main entry points: [`revive-adserver-5.4.1.tar`](https://github.com/120dev/revive-adserver/blob/main/revive-adserver-5.4.1.tar) (Revive Adserver), [`docker-compose.yml`](https://github.com/120dev/revive-adserver/blob/main/docker-compose.yml) (Container setup)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_deployment["Deployment"]
  node_compose["Container setup<br/>[docker-compose.yml]"]
  node_database[("MySQL database<br/>[docker-compose.yml]")]
end

subgraph group_ad_ops["Ad Operations"]
  node_adserver["Revive Adserver"]
  node_campaigns["Campaign management"]
  node_delivery["Ad delivery"]
  node_reporting["Campaign reporting"]
  node_targeting["Campaign targeting"]
end

node_publisher(("Publisher"))
node_websites["Publisher websites"]

node_publisher -->|"configures and starts"| node_compose
node_compose -->|"starts containers"| node_adserver
node_compose -->|"starts containers"| node_database
node_publisher -->|"manages campaigns"| node_campaigns
node_adserver -->|"supports"| node_campaigns
node_adserver -->|"serves ads"| node_delivery
node_adserver -->|"tracks and reports"| node_reporting
node_adserver -->|"applies targeting rules"| node_targeting
node_delivery -->|"serves ads on"| node_websites

click node_compose "https://github.com/120dev/revive-adserver/blob/main/docker-compose.yml"
click node_adserver "https://github.com/120dev/revive-adserver/blob/main/revive-adserver-5.4.1.tar"
click node_database "https://github.com/120dev/revive-adserver/blob/main/docker-compose.yml"
click node_campaigns "https://github.com/120dev/revive-adserver/blob/main/revive-adserver-5.4.1.tar"
click node_delivery "https://github.com/120dev/revive-adserver/blob/main/revive-adserver-5.4.1.tar"
click node_reporting "https://github.com/120dev/revive-adserver/blob/main/revive-adserver-5.4.1.tar"
click node_targeting "https://github.com/120dev/revive-adserver/blob/main/revive-adserver-5.4.1.tar"

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_compose,node_database toneBlue
class node_adserver,node_campaigns,node_delivery,node_reporting,node_targeting toneAmber
class node_publisher,node_websites toneIndigo
```

## Components

### Deployment

- [Container setup](https://github.com/120dev/revive-adserver/blob/main/docker-compose.yml): `docker-compose.yml`
- [MySQL database](https://github.com/120dev/revive-adserver/blob/main/docker-compose.yml): `docker-compose.yml`

### Ad Operations

- [Revive Adserver](https://github.com/120dev/revive-adserver/blob/main/revive-adserver-5.4.1.tar): `revive-adserver-5.4.1.tar`
- [Campaign management](https://github.com/120dev/revive-adserver/blob/main/revive-adserver-5.4.1.tar): `revive-adserver-5.4.1.tar`
- [Ad delivery](https://github.com/120dev/revive-adserver/blob/main/revive-adserver-5.4.1.tar): `revive-adserver-5.4.1.tar`
- [Campaign reporting](https://github.com/120dev/revive-adserver/blob/main/revive-adserver-5.4.1.tar): `revive-adserver-5.4.1.tar`
- [Campaign targeting](https://github.com/120dev/revive-adserver/blob/main/revive-adserver-5.4.1.tar): `revive-adserver-5.4.1.tar`

### Other components

- **Publisher**
- **Publisher websites**

## Connections

- Publisher → Container setup: configures and starts (evidence: `README.md`)
- Container setup → Revive Adserver: starts containers (evidence: `README.md`)
- Container setup → MySQL database: starts containers (evidence: `README.md`)
- Publisher → Campaign management: manages campaigns (evidence: `README.md`)
- Revive Adserver → Campaign management: supports (evidence: `README.md`)
- Revive Adserver → Ad delivery: serves ads (evidence: `README.md`)
- Revive Adserver → Campaign reporting: tracks and reports (evidence: `README.md`)
- Revive Adserver → Campaign targeting: applies targeting rules (evidence: `README.md`)
- Ad delivery → Publisher websites: serves ads on (evidence: `README.md`)
