> For the complete documentation index, see [llms.txt](https://learn.capstorm.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://learn.capstorm.com/copystorm-director/overview/architecture-overview.md).

# Architecture Overview

CopyStorm/Director is comprised of three major components:

* The CopyStorm/Director Database contains definitions of all CopyStorm jobs, their history, and the schedule(s) for when they should run.
* The CopyStorm/Director application is a rich GUI for editing and searching the content of a CopyStorm/Director Database.
* The CopyStorm/JobRunner is a command-line tool that runs jobs defined in the CopyStorm/Director Database.

The relationships between components are illustrated in the following diagram:

![](https://4094748065-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F762n2rpeqXwJ3ygR1d80%2Fuploads%2Fgit-blob-0526c1f02d2265050eed00c7514c7fe8643f6fe1%2F1d9d9d3b-DirectorComponents-800x503.png?alt=media)

In addition to the CopyStorm/Director components, installations of CopyStorm and CopyStorm/Medic are required. CopyStorm/Director can use any supported version of CopyStorm.

## CopyStorm/Director Database

The CopyStorm/Director database can be hosted in any relational database supported by Capstorm. Though the CopyStorm/Director Database can be kept with other tables, Capstorm recommends that a private database or schema is created to hold CopyStorm/Director data.

Like other Capstorm products, CopyStorm/Director automatically creates the necessary database schema the first time it attaches to a database.

## CopyStorm/Director

CopyStorm/Director is a GUI for managing and searching the data in a CopyStorm/Director Database. The CopyStorm/Director application comes in two flavors:

* A portable Java application that will run on any Windows, Linux, or Mac system.
* A web application which that will run in any container supporting Java Servlets. For example, Tomcat or Jetty.

## CopyStorm/JobRunner

CopyStorm/JobRunner is a command line tool designed to be invoked by a native system scheduler — Windows Scheduler or CRON on Linux / Mac. The primary purpose of CopyStorm/JobRunner is to run jobs on the schedules specified in the CopyStorm/Director Database and to record the results of each run (also within the CopyStorm/Director Database).
