# Deployment checklist

For a self-hosted Tonic Structural instance, you deploy Structural to a public cloud account (for example, AWS, GCP, or Azure) or data center.

Use this checklist to prepare to install Structural. [architecture-diagram](https://docs.tonic.ai/app/admin/architecture-diagram "mention") includes a diagram of the Structural components and how they are connected.

As you expand Structural to other teams in your organization, use this [process guide for implementation](https://docs.tonic.ai/app/admin/on-premise-deployment/guide-to-expand-structural-to-other-teams).

## Structural application server <a href="#install-checklist-tonic-app-server" id="install-checklist-tonic-app-server"></a>

Provision a server that meets the [required specifications](https://docs.tonic.ai/app/admin/tonic-system-requirements#sys-reqs-host-environment).

## Kubernetes or Docker environment <a href="#install-checklist-deployment-method-manual" id="install-checklist-deployment-method-manual"></a>

You deploy Structural to either a Kubernetes cluster or a Docker container. Ensure that the Kubernetes or Docker environment meets the required specifications:

* [Kubernetes environment requirements](https://docs.tonic.ai/app/admin/tonic-system-requirements#sys-reqs-kubernetes-manual)
* [Docker environment requirements](https://docs.tonic.ai/app/admin/tonic-system-requirements#sys-reqs-docker)

## Structural application database <a href="#install-checklist-tonic-app-database" id="install-checklist-tonic-app-database"></a>

Provision a PostgreSQL database that meets the [required specifications](https://docs.tonic.ai/app/admin/tonic-system-requirements#sys-reqs-tonic-app-database).

Determine whether to [host the Structural application database in Docker](https://docs.tonic.ai/app/admin/tonic-system-requirements#sys-reqs-app-db-docker).

Determine whether to [select a different schema for the application database](https://docs.tonic.ai/app/admin/connecting-to-tonic-database#app-database-custom-schema). By default, the schema is `public`.

## Required network access <a href="#install-checklist-network-access" id="install-checklist-network-access"></a>

To ensure a smooth installation and configuration process, all of the Structural components must have the appropriate network configurations.

<table data-header-hidden><thead><tr><th width="362" valign="top"></th><th valign="top"></th><th data-hidden></th></tr></thead><tbody><tr><td valign="top">Structural application server -> Structural application database</td><td valign="top">The Structural application server must have a valid network path to the Structural application database.</td><td></td></tr><tr><td valign="top">Structural application server -> quay.io</td><td valign="top">The Structural application server must have access to <a href="../tonic-system-requirements#sys-reqs-access-quay">download the Structural application images from quay.io</a>.<br><br>Ensure that any proxies or firewalls that might block access are configured to allow access.</td><td></td></tr><tr><td valign="top">Structural users -> Structural web application</td><td valign="top">The Structural application server runs a web server (HTTPS/port 443 and HTTP/port 80).<br><br>Ensure that all Structural users can reach the Structural application from their browser.</td><td></td></tr><tr><td valign="top">Structural application server --> Source and destination databases</td><td valign="top">The Structural application server must have a valid network path to the source and destination databases.</td><td></td></tr><tr><td valign="top">Structural application database remote access</td><td valign="top">If the Structural application database is not hosted on Docker, then it must be accessible and allow remote access.</td><td></td></tr><tr><td valign="top">Structural application server --> Structural telemetry URL</td><td valign="top">You must allow Structural to send telemetry information to Tonic.ai.<br><br>For the telemetry URL or IP addresses to allowlist, go to <a data-mention href="../../../frequently-asked-questions#faq-network-allowlist-amplitude">#faq-network-allowlist-amplitude</a>.</td><td></td></tr></tbody></table>

## Source and destination databases <a href="#install-checklist-source-destination-db" id="install-checklist-source-destination-db"></a>

Source databases contain the original data for Structural data generation. Structural writes the transformed data to a destination database.

[overview-for-database-administrators](https://docs.tonic.ai/app/setting-up-your-database/overview-for-database-administrators "mention") contains an overview of the requirements for Structural source and destination databases.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.tonic.ai/app/admin/on-premise-deployment/tonic-deployment-checklist.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
