(fix) update for dashboard

This commit is contained in:
Michael Feng
2023-06-30 16:58:43 -07:00
parent c860e163d6
commit ae38b5fd7f
3 changed files with 113 additions and 23 deletions

View File

@@ -11,7 +11,7 @@ See [Docker](./DOCKER.md) for more information about how to install and use Dock
## How do I use this repo? ## How do I use this repo?
Each folder showcases a different deployment type using Docker Compose, such as: Each folder showcases a different deployment type using Docker Compose, such as:
* A single Hummingbot instance * A single Hummingbot instance along with a dashboard that analyzes it
* A single Hummingbot instance that auto-starts a strategy or script * A single Hummingbot instance that auto-starts a strategy or script
* Linked Hummingbot and Gateway instances * Linked Hummingbot and Gateway instances
* Multiple instances of Hummingbot * Multiple instances of Hummingbot
@@ -27,15 +27,15 @@ docker compose up -d
## Deployment types using Docker Compose ## Deployment types using Docker Compose
### [Simple Hummingbot Compose](./simple_hummingbot_compose)
This installs a single [Hummingbot](https://github.com/hummingbot/hummingbot) instance as a Docker container.
### [Hummingbot with Dashboard](./hummingbot_with_dashboard) ### [Hummingbot with Dashboard](./hummingbot_with_dashboard)
⭐️⭐️⭐️ We recommend that new Hummingbot users follow this route ⭐️⭐️⭐️
This installs a single [Hummingbot](https://github.com/hummingbot/hummingbot) instance with a companion [Hummingbot Dashboard](https://github.com/hummingbot/dashboard) running. This installs a single [Hummingbot](https://github.com/hummingbot/hummingbot) instance with a companion [Hummingbot Dashboard](https://github.com/hummingbot/dashboard) running.
Documentation coming soon. ### [Simple Hummingbot Compose](./simple_hummingbot_compose)
This installs a single [Hummingbot](https://github.com/hummingbot/hummingbot) instance as a Docker container.
### [Autostart Hummingbot Compose](./autostart_hummingbot_compose) ### [Autostart Hummingbot Compose](./autostart_hummingbot_compose)

View File

@@ -50,9 +50,7 @@ After the images have been downloaded, you should see the following output:
⠿ Container gateway Started ⠿ Container gateway Started
``` ```
### 2. Set permissions and other initialization operations ### 2. Set permissions
**Grant read-write permissions**
Run this command from your root folder to grant read/write permission to the `hummingbot_files` and `gateway_files` sub-folders: Run this command from your root folder to grant read/write permission to the `hummingbot_files` and `gateway_files` sub-folders:
``` ```
@@ -61,16 +59,7 @@ sudo chmod -R a+rw ./hummingbot_files ./gateway_files
You may run into read-only permission issues if you don't do this. You may run into read-only permission issues if you don't do this.
**Add scripts** ### 3. Add token lists
Populate Hummingbot scripts folder with example scripts from the Hummingbot image:
```
docker cp hummingbot:/home/hummingbot/scripts-copy/. ./hummingbot_files/scripts/
```
This step is needed to being able to run the script examples. You can also copy individual [script examples](https://github.com/hummingbot/hummingbot/tree/master/scripts) into the `hummingbot_files/scripts` folder to make them available to your instance.
**Add token lists**
Populate Gateway lists folder from token lists from the Gateway image: Populate Gateway lists folder from token lists from the Gateway image:
``` ```
@@ -79,8 +68,17 @@ docker cp gateway:/home/gateway/src/templates/lists/. ./gateway_files/conf/lists
This step is needed to being able to interpret token symbols. Otherwise, you'll get "Token not supported" errors when you run Hummingbot. You can also copy individual [token lists](https://github.com/hummingbot/gateway/tree/main/src/templates/lists) into the `hummingbot_files/conf/lists` folder to make them available to your instance. This step is needed to being able to interpret token symbols. Otherwise, you'll get "Token not supported" errors when you run Hummingbot. You can also copy individual [token lists](https://github.com/hummingbot/gateway/tree/main/src/templates/lists) into the `hummingbot_files/conf/lists` folder to make them available to your instance.
### 4. Add scripts
### 3. Launch Hummingbot and generate certificates Populate Hummingbot scripts folder with example scripts from the Hummingbot image:
```
docker cp hummingbot:/home/hummingbot/scripts-copy/. ./hummingbot_files/scripts/
```
This step is needed to being able to run the script examples. You can also copy individual [script examples](https://github.com/hummingbot/hummingbot/tree/master/scripts) into the `hummingbot_files/scripts` folder to make them available to your instance.
### 5. Launch Hummingbot and generate certificates
Now, attach to the `hummingbot` instance: Now, attach to the `hummingbot` instance:
``` ```
@@ -105,7 +103,7 @@ Hummingbot will use the passphrase to generate the certificates and save them in
Afterwards, run `exit` to exit Hummingbot. Afterwards, run `exit` to exit Hummingbot.
### 4. Remove network ### 6. Remove network
Once you're back in Bash/Terminal, run the following command to remove the Compose project: Once you're back in Bash/Terminal, run the following command to remove the Compose project:
``` ```
@@ -120,7 +118,7 @@ You should see the following output:
⠿ Network hummingbot_gateway_compose_default Removed ⠿ Network hummingbot_gateway_compose_default Removed
``` ```
### 5. Modify YAML file ### 7. Modify YAML file
Now, use an IDE like [VSCode](https://code.visualstudio.com/) to edit the `docker-compose.yml` file. Now, use an IDE like [VSCode](https://code.visualstudio.com/) to edit the `docker-compose.yml` file.
@@ -151,7 +149,7 @@ The final `environment` section of the YAML file should look like this:
Afterwards, save the file. Afterwards, save the file.
### 6. Recreate network ### 8. Recreate network
Now, recreate the Compose project: Now, recreate the Compose project:
``` ```
@@ -175,3 +173,8 @@ To get started with Hummingbot, check out the following docs:
* [Basic Features](https://docs.hummingbot.org/operation/) * [Basic Features](https://docs.hummingbot.org/operation/)
* [Quickstart Guide](https://docs.hummingbot.org/quickstart/) * [Quickstart Guide](https://docs.hummingbot.org/quickstart/)
* [Hummingbot FAQ](https://docs.hummingbot.org/faq/) * [Hummingbot FAQ](https://docs.hummingbot.org/faq/)
For Gateway, check out the following docs:
* [Testing with Postman](https://docs.hummingbot.org/gateway/testing/)
* [Using Gateway with Hummingbot](https://docs.hummingbot.org/gateway/setup/)

View File

@@ -0,0 +1,87 @@
# Deploy Hummingbot Instance
This installs a single [Hummingbot](https://github.com/hummingbot/hummingbot) bot instance alongside a [Hummingbot Dashboard](https://github.com/hummingbot/dashboard) that can be used to control and analyze it.
## Prerequisites
This configuration requires [Docker Compose](https://docs.docker.com/compose/), a tool for defining and running multi-container Docker applications. The recommended way to get Docker Compose is to install [Docker Desktop](https://www.docker.com/products/docker-desktop/), which includes Docker Compose along with Docker Engine and Docker CLI which are Compose prerequisites.
See [Docker](../DOCKER.md) for more information about how to install and use Docker Compose, as well as helpful commands.
## Getting Started
Verify that Docker Compose is installed correctly by checking the version:
```bash
docker compose version
```
The output should be: `Docker Compose version v2.17.2` or similar. Ensure that you are using Docker Compose V2, as V1 is deprecated.
### 1. Launch network
Clone this repo to your machine and go to the folder:
```
git clone https://github.com/hummingbot/deploy-examples.git
cd deploy-examples/hummingbot_with_dashboard
```
Alternatively, copy the `docker-compose.yml` file to a directory on your machine where you want to store your Hummingbot files.
This is the "root folder" where your encrypted keys, scripts, trades, configs, logs, and other files related to your bots will be saved.
From the root folder, run the following command to pull the image and start the instance:
```
docker compose up -d
```
After the images have been downloaded, you should see the following output:
```
[+] Running 3/3
⠿ Network hummingbot_with_dashboard_default Created
⠿ Container hummingbot Started
⠿ Container dashboard Started
```
### 2. Set permissions
Run this command from your root folder to grant read/write permission to the `hummingbot_files` sub-folder:
```
sudo chmod -R a+rw ./hummingbot_files
```
You may run into read-only permission issues if you don't do this.
### 3. Populate scripts folder with example scripts
Run this command to copy the sample scripts into the `scripts` folder. Any new scripts you add here will also be available to your `hummingbot` instance.
```
docker cp hummingbot:/home/hummingbot/scripts-copy/. ./hummingbot_files/scripts/
```
This step is needed to being able to run the script examples. You can also copy individual [script examples](https://github.com/hummingbot/hummingbot/tree/master/scripts) into the `hummingbot_files/scripts` folder to make them available to your instance.
### 4. Launch Hummingbot
Attach to the `hummingbot` instance:
```
docker attach hummingbot
```
You should see the Hummingbot welcome screen:
![welcome screen](../welcome.png)
To get started with Hummingbot, check out the following docs:
* [Basic Features](https://docs.hummingbot.org/operation/)
* [Quickstart Guide](https://docs.hummingbot.org/quickstart/)
* [Hummingbot FAQ](https://docs.hummingbot.org/faq/)
### 5. Launch Dashboard
Go to http://localhost:8501 in your browser to see the Dashboard.
Dashboard is a new experimental visualization layer for Hummingbot instances. For more information, see:
* [Deploying Hummingbot + Dashboard on AWS](https://www.youtube.com/watch?v=xp_A8tZKKiA)
* [Kicking Off the Hummingbot Dashboard Community Project](https://blog.hummingbot.org/hummingbot-dashboard-community-project/)