# Containerization

Using Docker is a convenient way to start without installing system dependencies, as we have handled that for you. We plan to provide more containerized versions of our WriteBackExtreme application, such as Podman images\
\
Current version of *WriteBackExtreme* Docker is running on **Debian 12 - Bookworm**.

{% hint style="info" %}
Docker for WriteBackExtreme is production ready since version 5.2.0. All versions before are **not** ready for production.
{% endhint %}

### About the Docker image

The default exposed port of the application is `8090`.

Within the Docker image, a folder is created at the path `/app_data` that contains files and logs, ensuring persistence for the database.

The default repository database used is: *SQLite*

The initial configuration of the application is stored in a file named `wbe.config.yaml`. In our Docker image, there are two files that remain persistent during upgrades.

* Configuration file: `wbe.config.yaml`
* SQLite database: `writebackextreme.sqlite`

#### Configuration via Environment variables

The following environment variables are available and can be passed on into the Docker Container.

<table><thead><tr><th width="183">Key</th><th width="100">Type</th><th width="100" data-type="checkbox">Required?</th><th>Description</th></tr></thead><tbody><tr><td><code>WBE_LICENSE</code></td><td>String</td><td>true</td><td>Content of your license**</td></tr><tr><td><code>WBE_URL</code></td><td>Url</td><td>true</td><td>External URL you want to reach the application on ***</td></tr><tr><td><code>WBE_NUM_WORKERS</code></td><td>Number</td><td>false</td><td>Number of workers, defaults: 4, required minimum of 2 works</td></tr></tbody></table>

{% hint style="info" %}
`***` The external URL can be a company domain e.g. `wbe.company.com`. When testing locally you can provide a localhost url. default can be: `localhost:8090`
{% endhint %}

{% hint style="info" %}
`**` the content of a license can be found in our [portal](https://my-appsfortableau.infotopics.com).
{% endhint %}

### Getting started

The setup process is designed to be easy and painless. Therefore, the application comes preinstalled with a generic admin account by default.&#x20;

1. Before starting, ensure you have a WriteBackExtreme license, which can be downloaded via our [portal](https://my-appsfortableau.infotopics.com/).
2. Available URL e.g. `writebackextreme.company.com`

Please choose one of the following solutions to set up with:

{% content-ref url="containerization/docker-standalone" %}
[docker-standalone](https://docs.infotopics.com/writebackextreme/v5.0/installation-guide/getting-started/containerization/docker-standalone)
{% endcontent-ref %}

{% content-ref url="containerization/docker-compose" %}
[docker-compose](https://docs.infotopics.com/writebackextreme/v5.0/installation-guide/getting-started/containerization/docker-compose)
{% endcontent-ref %}

### Connecting with databases

The majority of database are able to connect with their databases right away. But some database required setups like: Snowflake, Databricks and the once with ODBC for example.

Read the [following article](https://docs.infotopics.com/writebackextreme/v5.0/installation-guide/getting-started/containerization/odbc-connections) to read how to use those connections.&#x20;

### Roadmap

This documentation will be actively updated, but there are a few things we want to push out in the future:

* Documentation to help with setup on cloud solutions:
  * Kubernetes.
  * Cloud hosting providers like Azure, AWS, etc.
* How to set up with Windows Server.
* WriteBackExtreme with Windows Containers only (without the Hyper-V component)?
* Make it even easier to setup.
* Guided custom setup.

If something is missing, please reach out to us!

{% hint style="warning" %}
These roadmap items are ideas we have, and based on requests, we help out and document the process.
{% endhint %}
