> For the complete documentation index, see [llms.txt](https://cortex-docs.paloaltonetworks.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://cortex-docs.paloaltonetworks.com/cortex-xsoar-6-installation-guides/6.14/cortex-xsoar-installation-guide/single-server-installation/install-cortex-xsoar-with-bolt-database.md).

# Install Cortex XSOAR with Bolt Database

Install Cortex XSOAR 6.14 on a single server with the Bolt database.

In a standard Cortex XSOAR deployment, the app server and database server are installed on the same machine.

If you are deploying a signed installer:

* You need to import the public key into the operating system. Open a [ticket](https://support.paloaltonetworks.com/Support/Index) with Palo Alto Networks support to get the public key. It is valid for six months.
* If you are using engines or hosts in a multi-tenant environment, you need to install `makeself`.

### **Cortex XSOAR installation file structure**

The following is the file and folder structure in a standard Cortex XSOAR installation.

By default, Cortex XSOAR is installed in the `/root` folder, but you can Move Data Folders to Another Location on the Server, if necessary.

| Asset         | Path                                                                           |
| ------------- | ------------------------------------------------------------------------------ |
| Binaries      | `/usr/local/demisto`                                                           |
| Data          | `/var/lib/demisto`                                                             |
| Logs          | `/var/log/demisto`                                                             |
| Configuration | `/etc/demisto.conf` (not created if defaults are selected during installation) |
| Reports       | `/tmp/demisto_install.log`                                                     |
| Install Log   | `/tmp/demisto_install.log`                                                     |

If you want to create different mounts for the `/var/lib/demisto`, `/var/lib/docker`, and `/tmp` partitions, it is recommended to allocate the following space to each partition (dependent on the expected amount of data and the size of your incidents and indicators).

* `/var/lib/demisto`: 200 GB (development) 1000 GB (production)

  If using Elasticsearch, see [Elasticsearch System Requirements](/cortex-xsoar-6-installation-guides/6.14/cortex-xsoar-installation-guide/system-requirements/elasticsearch-system-requirements.md).
* If using Docker - `/var/lib/docker`: 70 GB (development) 150 GB (production)
* If using Podman - `/home`: 70 GB (development) 150 GB (production)
* `/tmp`: 10 GB (development and production)

### **Prerequisites for installing Cortex XSOAR**

Verify the following information and requirements before you install Cortex XSOAR.

* A Customer Support Portal (CSP) account.

  Set up your CSP account. For more information, see [How to Create Your CSP User Account](https://knowledgebase.paloaltonetworks.com/KCSArticleDetail?id=kA10g000000ClNVCA0).

  When you create a CSP account, you can set up two-factor authentication (2FA) to log into the CSP by using an Email, Okta Verify, or Google Authenticator (non-FedRAMP accounts). For more information, see [How to Enable a Third Party IdP](https://knowledgebase.paloaltonetworks.com/KCSArticleDetail?id=kA14u000000sZ8mCAE).
* You have the following roles assigned:

  | Role        | Details                                                                                                                                                       |
  | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | CSP role    | The Super User role is assigned to your Customer Support Portal account. The user who creates the account receives this role.                                 |
  | Cortex role | You must have the Account Admin role. The first Customer Support Portal Super User to access Cortex Gateway receives Account Admin permissions automatically. |

  Log in to Cortex Gateway after creating the account. Download the image file and license. Repeat these tasks for each tenant.

  <div data-gb-custom-block data-tag="hint" data-style="info" class="hint hint-info"><p>You need a license, or a sales-provided evaluation license, assigned to your Customer Support Portal account to download Cortex XSOAR images from Cortex Gateway.</p></div>
* Your installation meets the [system requirements](/cortex-xsoar-6-installation-guides/6.14/cortex-xsoar-installation-guide/system-requirements/cortex-xsoar-system-requirements.md).
* You have root access.
* Docker is installed automatically unless you are installing on Oracle Linux, which requires manual installation.&#x20;

### Install Cortex XSOAR with Bolt Database

{% stepper %}
{% step %}

### Download the installation package and license

1. Log in to [Cortex Gateway](https://cortex-gateway.paloaltonetworks.com/accounts).
2. Locate the activation card for your license.\
   By default, the **Production-Standalone** license is selected. You can also select **Dev**. If you want to use a production and a development tenant with a private remote repository, select **Dev**. If you don't select it now, you can install a development tenant later.
3. Select **Download On Prem**.
4. Select **Next**.
5. Under **Choose Download Option**, select **Installer**.
6. Select the checkbox to agree to the license terms and conditions. Then select **Download**.

{% hint style="info" %}
In Google Chrome, to download the image and license files together, you may need to set **Settings** → **Privacy and security** → **Site settings** → **Additional permissions** → **Automatic downloads** to **Sites can ask to automatically download multiple files**.
{% endhint %}

Two files download: the `demistoserver-xxxxx.sh` installer file and a zipped JSON license file.

{% hint style="info" %}
Copy the download link button from your browser's Downloads section to get the offline-installation token.
{% endhint %}

7. (Optional) If you are deploying Cortex XSOAR using a signed installer (GPG), you need to import the GPG public key provided with the signed installer. Open a ticket with Palo Alto Networks support to get the public key (see [here](https://support.paloaltonetworks.com/Support/Index)).\
   For example, you can use the `rpm --import public.key` command to import the public key into the local GPG keyring. Note that each operating system has specific requirements.
8. (Optional) If you are deploying Cortex XSOAR using a signed installer (GPG) you might need to manually install the `makeself` package by running the `yum install makeself` command.
   {% endstep %}

{% step %}

### Make the server package executable

Run the following command to make the package executable. Replace `demisto.sh` with your installer filename if needed.

`chmod +x demisto.sh`
{% endstep %}

{% step %}

### Run the installer

1. Execute the **`.sh`** file by running the following command:

   `sudo ./demisto.sh`

   Add [Installer Flags](/cortex-xsoar-6-installation-guides/6.14/cortex-xsoar-installation-guide/single-server-installation/install-cortex-xsoar-with-bolt-database/installer-flags.md) as required.
2. Accept the EULA and add the information when prompted.
3. The Server HTTPS port (default is 443)
4. If you are using Elasticsearch, enter the Elasticsearch details, such as the URL, timeout, etc.
5. Type the Admin username (default is `admin`).
6. Type the password (default is admin).
   {% endstep %}

{% step %}

### Verify the installation

(Optional) After the installation has completed, do the following:

1. Confirm that the Cortex XSOAR server status is active by running the `systemctl status demisto` command.

   If the server is not active, run the `systemctl start demisto` command to start the server.
2. Confirm that the Docker service status is active by running the `systemctl status docker` command.
3. In a web browser, go to the `https://`*`serverURL`*`:`*`port`* to verify that Cortex XSOAR was successfully installed.

   When you open Cortex XSOAR for the first time, add the license.
   {% endstep %}

{% step %}

### Add the license

After the installation is complete, activate the license.

1. Log in to the Cortex XSOAR server.
2. Upload the **license** file that you downloaded from the Cortex Gateway in Step 1.
   {% endstep %}
   {% endstepper %}

#### Troubleshoot Cortex XSOAR installation

In some cases, due to moving previous installation files, the installation can fail, and the following error message is displayed:

```
mv: cannot stat '/var/lib/dpkg/info/demistoserver.postrm': No such file or directory
Failed to execute: 'mv': exit status 1
```

There are two options to resolve this issue:

* Make a note of the path to the `demistoserver.postrm` file. Rerun the installation using this path for the -- `-prev-uninstall-script` flag. Example: `-- -prev-uninstall-script="/path/to/demistoserver.postrm"`
* Rerun the installation with the flag `-- -use-prev-uninstall-script=true`. Note that if you use this flag and have previously created a special ID & group for demisto users, the demisto user and group are deleted and recreated during installation.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

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

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://cortex-docs.paloaltonetworks.com/cortex-xsoar-6-installation-guides/6.14/cortex-xsoar-installation-guide/single-server-installation/install-cortex-xsoar-with-bolt-database.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
