Breakdown insllation instructions Make installation instructions shorter Separate Windows from the remainder Use tabs for better navigation Minor language improvements
113 lines
4.4 KiB
Markdown
113 lines
4.4 KiB
Markdown
# Using Freqtrade with Docker
|
|
|
|
## Install Docker
|
|
|
|
Start by downloading and installing Docker CE for your platform:
|
|
|
|
* [Mac](https://docs.docker.com/docker-for-mac/install/)
|
|
* [Windows](https://docs.docker.com/docker-for-windows/install/)
|
|
* [Linux](https://docs.docker.com/install/)
|
|
|
|
Optionally, [`docker-compose`](https://docs.docker.com/compose/install/) should be installed and available to follow the [docker quick start guide](#docker-quick-start).
|
|
|
|
Once you have Docker installed, simply prepare the config file (e.g. `config.json`) and run the image for `freqtrade` as explained below.
|
|
|
|
## Freqtrade with docker-compose
|
|
|
|
Freqtrade provides an official Docker image on [Dockerhub](https://hub.docker.com/r/freqtradeorg/freqtrade/), as well as a [docker-compose file](https://github.com/freqtrade/freqtrade/blob/develop/docker-compose.yml) ready for usage.
|
|
|
|
!!! Note
|
|
- The following section assumes that `docker` and `docker-compose` are installed and available to the logged in user.
|
|
- All below comands use relative directories and will have to be executed from the directory containing the `docker-compose.yml` file.
|
|
|
|
|
|
### Docker quick start
|
|
|
|
Create a new directory and place the [docker-compose file](https://github.com/freqtrade/freqtrade/blob/develop/docker-compose.yml) in this directory.
|
|
|
|
=== "PC/MAC/Linux"
|
|
``` bash
|
|
mkdir ft_userdata
|
|
cd ft_userdata/
|
|
# Download the docker-compose file from the repository
|
|
curl https://raw.githubusercontent.com/freqtrade/freqtrade/master/docker-compose.yml -o docker-compose.yml
|
|
|
|
# Pull the freqtrade image
|
|
docker-compose pull
|
|
|
|
# Create user directory structure
|
|
docker-compose run --rm freqtrade create-userdir --userdir user_data
|
|
|
|
# Create configuration - Requires answering interactive questions
|
|
docker-compose run --rm freqtrade new-config --config user_data/config.json
|
|
```
|
|
|
|
=== "RaspberryPi"
|
|
``` bash
|
|
mkdir ft_userdata
|
|
cd ft_userdata/
|
|
# Download the docker-compose file from the repository
|
|
curl https://raw.githubusercontent.com/freqtrade/freqtrade/master_pi/docker-compose.yml -o docker-compose.yml
|
|
|
|
# Pull the freqtrade image
|
|
docker-compose pull
|
|
|
|
# Create user directory structure
|
|
docker-compose run --rm freqtrade create-userdir --userdir user_data
|
|
|
|
# Create configuration - Requires answering interactive questions
|
|
docker-compose run --rm freqtrade new-config --config user_data/config.json
|
|
```
|
|
|
|
The above snippet creates a new directory called `ft_userdata`, downloads the latest compose file and pulls the freqtrade image.
|
|
The last 2 steps in the snippet create the directory with `user_data`, as well as (interactively) the default configuration based on your selections.
|
|
|
|
!!! Question "How to edit the bot configuration?"
|
|
You can edit the configuration at any time, which is available as `user_data/config.json` (within the directory `ft_userdata`) when using the above configuration.
|
|
|
|
#### Adding a custom strategy
|
|
|
|
1. The configuration is now available as `user_data/config.json`
|
|
2. Copy a custom strategy to the directory `user_data/strategies/`
|
|
3. add the Strategy' class name to the `docker-compose.yml` file
|
|
|
|
The `SampleStrategy` is run by default.
|
|
|
|
!!! Warning "`SampleStrategy` is just a demo!"
|
|
The `SampleStrategy` is there for your reference and give you ideas for your own strategy.
|
|
Please always backtest the strategy and use dry-run for some time before risking real money!
|
|
|
|
Once this is done, you're ready to launch the bot in trading mode (Dry-run or Live-trading, depending on your answer to the corresponding question you made above).
|
|
|
|
=== "Docker Compose"
|
|
``` bash
|
|
docker-compose up -d
|
|
```
|
|
|
|
#### Docker-compose logs
|
|
|
|
Logs will be located at: `user_data/logs/freqtrade.log`.
|
|
You can check the latest log with the command `docker-compose logs -f`.
|
|
|
|
#### Database
|
|
|
|
The database will be at: `user_data/tradesv3.sqlite`
|
|
|
|
#### Updating freqtrade with docker-compose
|
|
|
|
To update freqtrade when using `docker-compose` is as simple as running the following 2 commands:
|
|
|
|
=== "Docker Compose"
|
|
``` bash
|
|
# Download the latest image
|
|
docker-compose pull
|
|
# Restart the image
|
|
docker-compose up -d
|
|
```
|
|
|
|
This will first pull the latest image, and will then restart the container with the just pulled version.
|
|
|
|
!!! Warning "Check the Changelog"
|
|
You should always check the changelog for breaking changes / manual interventions required and make sure the bot starts correctly after the update.
|
|
|