---
updatedAt: 2025-05-20T01:00:17.000Z
agentTools:
  projectIndex: https://doc.overops.com/llms.txt
---

# Install Analysis Server in Docker

The OverOps Server can be made available to other containers through [networking](https://docs.docker.com/network/). In this guide, we'll run the server locally, binding to port 8080 on the host machine. Configuration files are [mounted](https://docs.docker.com/storage/bind-mounts/) into the container from the host machine.

> 📘 Note
>
> This procedure requires a License Key, which provided by OverOps.

## Prerequisites

Please see [OverOps Installation Prerequisites](https://doc.overops.com/docs/overops-installation-requirements) for details.

> 🚧 Free Disk Space
>
> The server requires at least **200 GB** of free disk space for OverOps.

> 🚧 Requirements
>
> Please ensure you have:
>
> * At least 16384 processes (`ulimit -u`)
> * At least 32768 files (`ulimit -n`)

# Run the Server

> 📘 Note
>
> Pull [overops/server](https://hub.docker.com/r/overops/server) from the Docker Hub.

## Create a `Private` Folder

1.In the private folder, create the properties files:

```
my.agentsettings.properties, 
my.server.properties, 
smtp.properties, 
smtpserver.properties 
```

Example configuration files can be found on [GitHub](https://github.com/takipi-field/kubernetes/tree/master/backend/private).

2. Create a `storage` folder. This this where the server will store data.

> 🚧 Important!
>
> The `private` and `storage` folders need to be on the same directory from which you run the docker commands or the path to the `private` and `storage` folder needs to be explicitly provided in the docker command arguments.

## Create a MySQL or PostgreSQL Database.

> 🚧 MySQL SSL Data Connections
>
> Data connections to MySQL via SSL are disabled by default.\
> To disable data connections via SSL add the `--no-db-ssl` startup argument flag.\
> This will update the configuration file and make SSL disabled persistent for future server restarts. To enable SSL use the `-db-ssl` flag to turn SSL on.
>
> The options:
>
> ```
> --db-ssl       to enable
> --no-db-ssl    to disable
> ```

> ❗️ MySQL- Running the Server on a Non-UTC Timezone
>
> There are several issues related to timezones that are set to other than UTC (see list below). To prevent these issues from happening we strongly recommend that the server on which MySQL is running runs on a UTC timezone.
>
> Examples:
>
> * Known issue with the PDT timezone
> * timezones with duplicate entries, such as:
> * IST - India
> * IST - Israel
> * IST - Ireland.

## Running MySQL

```text Using MySQL DB
<TAKIPI-SERVER-HOME>/bin/takipi-server.sh start -u <HOSTNAME>
   --db-type mysql
   --db-url <JDBC-URL_OF_MYSQL_SERVER>
   --db-user <db username for MySQL>
   --db-password <db user password>
   --no-db-ssl
```

## Set Environment Variables

Several environment variables must be set, including:

```
HOST_URL - hostname within your cluster
FRONTEND_URL - external hostname for web browsers
DB_TYPE - database type
DB_URL - database server URL
DB_USER - database username
DB_PASS - database password
```

## Run the OverOps/Server Container

```
docker run -p 8080:8080 \
--mount type=bind,source="$(pwd)"/private,target=/opt/private \
--mount type=bind,source="$(pwd)"/storage,target=/opt/takipi-server/storage \
-e HOST_URL=localhost:8080 \
-e FRONTEND_URL=http://localhost:8080 \
-e DB_TYPE=mysql \
-e DB_USER=<DATABASE_USER> \
-e DB_PASS=<DATABASE_PASS> \
-e DB_URL=<DATABASE_URL> \
overops/server
```

## Activate OverOps

1. Go to  http\://`<FRONTEND_URL>`/  in your browser and follow the instructions.
2. Send the License ID to OverOps [Support](mailto:support@overops.com?subject=Request%20License%20Key) with the following information:

* Your company name
* Your name and email address
* The License ID shown\
  to receive your license code.\
  OverOps will return the license key to the email address.you provide.