mirror of
https://github.com/d0zingcat/deploy.git
synced 2026-06-15 07:26:50 +00:00
Merge pull request #23 from hummingbot/dashboard-updates
Dashboard updates
This commit is contained in:
12
README.md
12
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)
|
||||
|
||||
|
||||
@@ -86,7 +86,7 @@ Now, use an IDE like [VSCode](https://code.visualstudio.com/) to edit the `docke
|
||||
Edit the section that defines the `CONFIG_PASSWORD` and `CONFIG_FILE_NAME` environment variables:
|
||||
```yaml
|
||||
# environment:
|
||||
# - CONFIG_PASSWORD=[password]
|
||||
# - CONFIG_PASSWORD=a
|
||||
# - CONFIG_FILE_NAME=simple_pmm_example.py
|
||||
# - CONFIG_FILE_NAME=conf_pure_mm_1.yml
|
||||
```
|
||||
@@ -99,7 +99,7 @@ Uncomment out:
|
||||
The final `environment` section of the YAML file should look like this:
|
||||
```yaml
|
||||
environment:
|
||||
- CONFIG_PASSWORD=[password]
|
||||
- CONFIG_PASSWORD=a
|
||||
- CONFIG_FILE_NAME=simple_pmm_example.py
|
||||
```
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ services:
|
||||
- "./hummingbot_files/scripts:/home/hummingbot/scripts"
|
||||
- "./hummingbot_files/certs:/home/hummingbot/certs"
|
||||
# environment:
|
||||
# - CONFIG_PASSWORD=[password]
|
||||
# - CONFIG_PASSWORD=a
|
||||
# - CONFIG_FILE_NAME=simple_pmm_example.py
|
||||
# - CONFIG_FILE_NAME=conf_pure_mm_1.yml
|
||||
logging:
|
||||
|
||||
@@ -24,7 +24,7 @@ class SimplePMM(ScriptStrategyBase):
|
||||
order_amount = 0.1
|
||||
create_timestamp = 0
|
||||
trading_pair = "ETH-USDT"
|
||||
exchange = "binance_paper_trade"
|
||||
exchange = "kucoin_paper_trade"
|
||||
# Here you can use for example the LastTrade price to use in your strategy
|
||||
price_source = PriceType.MidPrice
|
||||
|
||||
|
||||
@@ -106,10 +106,10 @@ Edit the section that defines the `CONFIG_PASSWORD` and `CONFIG_FILE_NAME` envir
|
||||
```yaml
|
||||
hummingbot:
|
||||
# environment:
|
||||
# - CONFIG_PASSWORD=[password]
|
||||
# - CONFIG_PASSWORD=a
|
||||
gateway:
|
||||
# environment:
|
||||
# - GATEWAY_PASSPHRASE=[passphrase]
|
||||
# - GATEWAY_PASSPHRASE=a
|
||||
```
|
||||
|
||||
Uncomment out:
|
||||
@@ -121,10 +121,10 @@ The final `environment` section of the YAML file should look like this:
|
||||
```yaml
|
||||
bot:
|
||||
environment:
|
||||
- CONFIG_PASSWORD=[password]
|
||||
- CONFIG_PASSWORD=a
|
||||
gateway:
|
||||
environment:
|
||||
- GATEWAY_PASSPHRASE=[passphrase]
|
||||
- GATEWAY_PASSPHRASE=a
|
||||
```
|
||||
|
||||
Afterwards, save the file.
|
||||
|
||||
@@ -12,7 +12,7 @@ services:
|
||||
- "./hummingbot_files/scripts:/scripts"
|
||||
- "./hummingbot_files/certs:/certs"
|
||||
# environment:
|
||||
# - CONFIG_PASSWORD=[password]
|
||||
# - CONFIG_PASSWORD=a
|
||||
logging:
|
||||
driver: "json-file"
|
||||
options:
|
||||
@@ -33,7 +33,7 @@ services:
|
||||
- "./gateway_files/logs:/usr/src/app/logs"
|
||||
- "./hummingbot_files/certs:/usr/src/app/certs"
|
||||
# environment:
|
||||
# - GATEWAY_PASSPHRASE=[passphrase]
|
||||
# - GATEWAY_PASSPHRASE=a
|
||||
|
||||
emqx:
|
||||
container_name: "emqx"
|
||||
|
||||
@@ -50,24 +50,35 @@ After the images have been downloaded, you should see the following output:
|
||||
⠿ Container gateway Started
|
||||
```
|
||||
|
||||
### 2. Set permissions and other initialization operations
|
||||
### 2. Set permissions
|
||||
|
||||
Run this command from your root folder to grant read/write permission to the `hummingbot_files` and `gateway_files` sub-folders:
|
||||
```
|
||||
sudo chmod -R a+rw ./hummingbot_files ./gateway_files
|
||||
```
|
||||
|
||||
Populate Hummingbot scripts folder with example scripts from the Hummingbot image:
|
||||
```
|
||||
docker cp hummingbot:/home/hummingbot/scripts-copy/. ./hummingbot_files/scripts/
|
||||
```
|
||||
You may run into read-only permission issues if you don't do this.
|
||||
|
||||
### 3. Add token lists
|
||||
|
||||
Populate Gateway lists folder from token lists from the Gateway image:
|
||||
```
|
||||
docker cp gateway:/home/gateway/src/templates/lists/. ./gateway_files/conf/lists/
|
||||
```
|
||||
|
||||
### 3. Launch Hummingbot and generate certificates
|
||||
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
|
||||
|
||||
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:
|
||||
```
|
||||
@@ -92,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:
|
||||
```
|
||||
@@ -107,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.
|
||||
|
||||
@@ -138,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:
|
||||
```
|
||||
@@ -162,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/)
|
||||
|
||||
@@ -2,7 +2,7 @@ version: "3.9"
|
||||
services:
|
||||
hummingbot:
|
||||
container_name: hummingbot
|
||||
image: hummingbot/hummingbot:development
|
||||
image: hummingbot/hummingbot:latest
|
||||
volumes:
|
||||
- "./hummingbot_files/conf:/home/hummingbot/conf"
|
||||
- "./hummingbot_files/conf/connectors:/home/hummingbot/conf/connectors"
|
||||
@@ -12,7 +12,7 @@ services:
|
||||
- "./hummingbot_files/scripts:/home/hummingbot/scripts"
|
||||
- "./hummingbot_files/certs:/home/hummingbot/certs"
|
||||
# environment:
|
||||
# - CONFIG_PASSWORD=[password]
|
||||
# - CONFIG_PASSWORD=a
|
||||
logging:
|
||||
driver: "json-file"
|
||||
options:
|
||||
@@ -34,4 +34,4 @@ services:
|
||||
- "./gateway_files/db:/home/gateway/db"
|
||||
- "./hummingbot_files/certs:/home/gateway/certs"
|
||||
# environment:
|
||||
# - GATEWAY_PASSPHRASE=[passphrase]
|
||||
# - GATEWAY_PASSPHRASE=a
|
||||
|
||||
87
hummingbot_with_dashboard/README.md
Normal file
87
hummingbot_with_dashboard/README.md
Normal 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:
|
||||
|
||||

|
||||
|
||||
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/)
|
||||
@@ -107,13 +107,13 @@ We'll edit the section that defines the following environment variables:
|
||||
```yaml
|
||||
hummingbot-1:
|
||||
# environment:
|
||||
# - CONFIG_PASSWORD=[password]
|
||||
# - CONFIG_PASSWORD=a
|
||||
hummingbot-2:
|
||||
# environment:
|
||||
# - CONFIG_PASSWORD=[password]
|
||||
# - CONFIG_PASSWORD=a
|
||||
gateway:
|
||||
# environment:
|
||||
# - GATEWAY_PASSPHRASE=[passphrase]
|
||||
# - GATEWAY_PASSPHRASE=a
|
||||
```
|
||||
|
||||
Uncomment out:
|
||||
@@ -125,13 +125,13 @@ The final `environment` section of the YAML file should look like this:
|
||||
```yaml
|
||||
hummingbot-1:
|
||||
environment:
|
||||
- CONFIG_PASSWORD=[password]
|
||||
- CONFIG_PASSWORD=a
|
||||
hummingbot-2:
|
||||
environment:
|
||||
- CONFIG_PASSWORD=[password]
|
||||
- CONFIG_PASSWORD=a
|
||||
gateway:
|
||||
environment:
|
||||
- GATEWAY_PASSPHRASE=[passphrase]
|
||||
- GATEWAY_PASSPHRASE=a
|
||||
```
|
||||
|
||||
Afterwards, save the file.
|
||||
|
||||
@@ -12,7 +12,7 @@ services:
|
||||
- "./hummingbot_files/scripts:/home/hummingbot/scripts"
|
||||
- "./hummingbot_files/certs:/home/hummingbot/certs"
|
||||
# environment:
|
||||
# - CONFIG_PASSWORD=[password]
|
||||
# - CONFIG_PASSWORD=a
|
||||
logging:
|
||||
driver: "json-file"
|
||||
options:
|
||||
@@ -34,7 +34,7 @@ services:
|
||||
- "./hummingbot_files/scripts:/home/hummingbot/scripts"
|
||||
- "./hummingbot_files/certs:/home/hummingbot/certs"
|
||||
# environment:
|
||||
# - CONFIG_PASSWORD=[password]
|
||||
# - CONFIG_PASSWORD=a
|
||||
logging:
|
||||
driver: "json-file"
|
||||
options:
|
||||
@@ -55,4 +55,4 @@ services:
|
||||
- "./gateway_files/logs:/usr/src/app/logs"
|
||||
- "./hummingbot_files/certs:/usr/src/app/certs"
|
||||
# environment:
|
||||
# - GATEWAY_PASSPHRASE=[passphrase]
|
||||
# - GATEWAY_PASSPHRASE=a
|
||||
|
||||
@@ -2,7 +2,7 @@ version: "3.9"
|
||||
services:
|
||||
hummingbot:
|
||||
container_name: hummingbot
|
||||
image: hummingbot/hummingbot:development
|
||||
image: hummingbot/hummingbot:latest
|
||||
volumes:
|
||||
- "./hummingbot_files/conf:/home/hummingbot/conf"
|
||||
- "./hummingbot_files/conf/connectors:/home/hummingbot/conf/connectors"
|
||||
|
||||
Reference in New Issue
Block a user