diff --git a/README.md b/README.md index 24bcdcb..b290572 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ See [Docker](./DOCKER.md) for more information about how to install and use Dock ## How do I use this repo? 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 * Linked Hummingbot and Gateway instances * Multiple instances of Hummingbot @@ -27,15 +27,15 @@ docker compose up -d ## 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) +⭐️⭐️⭐️ 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. -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) diff --git a/hummingbot_gateway_compose/README.md b/hummingbot_gateway_compose/README.md index e8143dd..1932d00 100644 --- a/hummingbot_gateway_compose/README.md +++ b/hummingbot_gateway_compose/README.md @@ -50,9 +50,7 @@ After the images have been downloaded, you should see the following output: ⠿ Container gateway Started ``` -### 2. Set permissions and other initialization operations - -**Grant read-write permissions** +### 2. Set permissions 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. -**Add scripts** - -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** +### 3. Add token lists 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. +### 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: ``` @@ -105,7 +103,7 @@ Hummingbot will use the passphrase to generate the certificates and save them in 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: ``` @@ -120,7 +118,7 @@ You should see the following output: ⠿ 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. @@ -151,7 +149,7 @@ The final `environment` section of the YAML file should look like this: Afterwards, save the file. -### 6. Recreate network +### 8. Recreate network 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/) * [Quickstart Guide](https://docs.hummingbot.org/quickstart/) * [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/) diff --git a/hummingbot_with_dashboard/README.md b/hummingbot_with_dashboard/README.md index e69de29..d935672 100644 --- a/hummingbot_with_dashboard/README.md +++ b/hummingbot_with_dashboard/README.md @@ -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/)