# Command List

{% hint style="info" %}
To see a list of all available commands and flags on your terminal, type and enter the command`hollaex`
{% endhint %}

{% hint style="success" %}
This is a full list of commands available. If you want to only see the core commands which are mandatorily necessary to operate an exchange, Please check the [How-tos](/get-started/cli-how-tos/start-exchange.md) section.
{% endhint %}

## General Flags

All these flags will work with every command **except for** **`hollaex init`**

### `--path`&#x20;

* Path of HollaEx Kit directory. If the `--path` flag doesn't get specified, the CLI automatically set the current directory of the terminal as the Kit path by default.

### `--kube`

* Set the HollaEx CLI target server to remote Kubernetes.

### `--skip`

* Run the script without verifying `docker-compose` setup.

## `hollaex import`

Import downloaded settings file (.json) from the HollaEx dashboard.&#x20;

### `--path`

* Path of your settings files.

### `--with_aws_s3`

* Import settings files from the remote AWS S3 bucket.

## `hollaex export`

Import downloaded settings file (.json) from the HollaEx dashboard.&#x20;

### `--path`

* Path to export the settings files.

### `--with_aws_s3`

* Export settings files to the remote AWS S3 bucket.

## `hollaex server --setup`

Setup the exchange for the first launch. [Learn more.](/get-started/on-premise-exchange-setup/setup.md)

### `--restore_from_backup`

* This command set up your exchange based on the configuration you have already set and will take care of all of the data migration procedures.  [Learn more](/get-started/cli-how-tos/exchange-migration.md).

## `hollaex server --start`

Start the exchange which has already been setup. [Learn more](/get-started/cli-how-tos/start-exchange.md).

### `--ignore_settings`

* Ignore the local HollaEx Kit settings and **not** updating it to the server.

## `hollaex server --stop`

Stop the existing exchange which has already been running. [Learn more](/get-started/cli-how-tos/stop-exchange.md).

## `hollaex server --restart`

Restart the existing exchange. [Learn more](/get-started/cli-how-tos/stop-exchange.md#restarting-the-exchange).

### `--ignore_settings`

* Ignore the local HollaEx Kit settings and **not** updating it to the server.

## `hollaex prod`

Bring up the exchange to production stage.&#x20;

Setting up the exchange domain and issuing SSL certificate are possible with this command. [Learn more](/get-started/on-premise-exchange-setup/use-custom-domain.md).

## `hollaex server --scale`

Scaling the container (server) numbers.&#x20;

The scaling is only supported for the stateless servers (`api` and `stream`).

## `hollaex web --scale`

Scaling the container (web) numbers.&#x20;

## `hollaex server --build`

Building the custom HollaEx core image again to includes user custom code like `/mail` or `/plugins` on HollaEx Kit.

The server should be restarted to apply the newly build Docker image.

## `hollaex server --apply`

Upgrade the existing exchange to new version.

### `--tag`

* Version number of HollaEx Core to upgrade. You can always check the latest Core version number at [here](https://hub.docker.com/repository/docker/bitholla/hollaex-core/general).

### `--ignore_settings`

* Ignore the local HollaEx Kit settings and **not** updating it to the server.

### `--ignore_compatibility_check`

* Ignore the HollaEx Core / HollaEx Kit compatibility checks while on the upgrade procedure. This flag is not recommended for the most of cases.

## `hollaex server --terminate`

Terminate the existing exchange. **THIS COMMAND WILL COMPLETELY REMOVE YOUR EXCHANGE ENVIRONMENT**. [Learn more](/get-started/cli-how-tos/stop-exchange.md#terminating-the-exchange).

## `hollaex dev`

Setup and control a development server for building custom plugins. This command **should NOT** be run at the machine with the existing exchange running. There could be conflicts that might affect the production server. Please run the dev command at the separated machine (environment).

The development server mounts the local Kit components including `/plugins` folder or `/dbs` folder into the containers. The code changes would be synced with the containers in real time.

### `--setup`

* Setup a development server. **This should be not run at the machine with the existing exchange.**&#x20;

### `--start`

* Start the stopped development server.

### `--stop`

* Stop the started development server.

### `--restart`

* Restart the existing development server. The `npm` packages for `/plugins` folder would be reinstalled while on the restart.&#x20;

### `--terminate`

* **Terminate** the existing development server.

## `hollaex web`

Run web client for the exchange.

### `--setup`

* Setup the web client for the first launch.

### `--start`

* Start the web client which has already been setup.

### `--stop`

* Stop the web client.

### `--restart`

* Restart the web client.

### `--build`

* Rebuild the web client and upgrade.

### `--terminate`

* **TERMINATE** the web client.

## `hollaex toolbox`

Toolbox with advanced features which could be helpful for your exchange operations.

### `--backup`

* Run the full backup with `pg_dumpall` for the exchange PostgreSQL database.

### `--flush_redis`

* Run the full flush of Redis stored data. It could be helpful in certain situations If the exchange doesn't work properly.

### `--issue_ssl`

* Issue SSL certificate on local Nginx by using Let's Encrypt.

### `--renew_ssl`

* Renew SSL certificate on local Nginx by using Let's Encrypt.

### `--update_registry_secret`

* Update the existing Docker registry secret at the Kubernetes Cluster.
  * Toolbox command only for users who running exchange at Kubernetes.

### `--set_activation_code`

* Update the activation code for the exchange to a new one.
  * Could be useful to switch activation code from trial to non-trial one.

### `--set_config`

{% hint style="danger" %}
`This command will completely override the existing user database based on the settings files user got at HollaEx Kit. Do not run it without full understanding of this command.`
{% endhint %}

* Update (override) the database constants based on the user's settings files (`configmap` and `secret` files at `/settings` directory of HollaEx Kit)

### `--connect_database`

* Open a direct shell connection to the exchange PostgreSQL database by using `psql`.
  * `psql` should be installed first on the user's computer before running this command.

### `--connect_redis`

* Open a direct shell connection to the exchange Redis by using `redis-cli`.
  * `redis-cli` should be installed first on the user's computer before running this command.

### `--connect_influxdb`

* Open a direct shell connection to the exchange InfluxDB by using `influx-client`.
  * `influx-client` should be installed first on the user's computer before running this command.

### `--install_cli`

* Install a specific version of HollaEx CLI.
  * For example, `hollaex toolbox --install_cli 1.8.5` would install version 1.8.5 of the CLI.

### `--influxdb_migration`

* Migrating trade data into InfluxDB to display charts.
  * Running this command is necessary after the exchange environment migration.

## `hollaex cloud`

This command set is  to manage an exchange running on the HollaCloud.

### `--start`

Start the stopped exchange on the HollaCloud.

### `--stop`

Stop the running exchange on the HollaCloud.

### `--restart`

Restart the running exchange on the HollaCloud.

### `--upgrade`

Upgrade the running exchange on the HollaCloud.

* `--kit_repo` (Optional)
  * Specify the custom HollaEx Kit GitHub repository URL.
* `--kit_branch` (Optional)
  * Specify the custom HollaEx Kit GitHub repository branch.

### `--terminate`

**Terminate** the running exchange on the HollaCloud. This job can't be undone.

## `hollaex status`

Show the exchange server status.

## `hollaex logs`

Show an overview of logs from the exchange server.&#x20;

### `--target`

* Specifying a target container.
  * Supported targets: `api`, `stream`, `engine`, `db`, `redis`, `influxdb`

### `--line`

* Specifying last line(s) to print out.

  * `20` by default (Printing last 20 lines of logs).

### `--export <PATH>`

* Exporting the logs into a single file.&#x20;
* The path to save logs file should be passed with the `--export` flag.

## `hollaex version`

Print out the installed version number of HollaEx CLI.


---

# 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.hollaex.com/get-started/cli-how-tos/command-list.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.
