Skip to content

Freqtrade Docker 部署指南

快速部署

使用以下命令即可快速部署 Freqtrade:

bash
# 创建用户数据目录
mkdir ft_userdata
cd ft_userdata/

# 从仓库下载 docker-compose 文件
curl https://raw.githubusercontent.com/freqtrade/freqtrade/stable/docker-compose.yml -o docker-compose.yml

# 拉取 freqtrade 镜像
docker compose pull

# 创建用户目录结构
docker compose run --rm freqtrade create-userdir --userdir user_data

# 创建配置文件(需要回答交互式问题)
docker compose run --rm freqtrade new-config --config user_data/config.json

Webserver 模式部署

| 这个模式可以进行数据下载以及进行回测

方式一:一次性启动容器

您也可以通过 Docker 使用 Webserver 模式。启动一次性容器需要显式配置端口,因为默认情况下不暴露端口。

bash
docker compose run --rm -p 127.0.0.1:8080:8080 freqtrade webserver

这会启动一个一次性容器,当您停止它时容器将被删除。此操作假设端口 8080 仍然可用,并且没有其他机器人在该端口上运行。

方式二:修改 docker-compose 配置

或者,您可以重新配置 docker-compose 文件来更新命令:

yaml
command: >
  webserver
  --config /freqtrade/user_data/config.json

完整的 yaml 配置如下:

yaml
version: '3'
services:
  freqtrade:
    image: freqtradeorg/freqtrade:stable
    # image: freqtradeorg/freqtrade:develop
    # Use plotting image
    # image: freqtradeorg/freqtrade:develop_plot
    # Build step - only needed when additional dependencies are needed
    # build:
    #   context: .
    #   dockerfile: "./docker/Dockerfile.custom"
    restart: unless-stopped
    container_name: freqtrade
    volumes:
      - "./user_data:/freqtrade/user_data"
    # Expose api on port 8080 (localhost only)
    # Please read: https://www.freqtrade.io/en/latest/rest-api/ documentation
    # for more information.
    ports:
      - "127.0.0.1:8080:8080"
    # Default command used when running `docker compose up`
    command: >
      webserver
      --logfile /freqtrade/user_data/logs/freqtrade.log
      --config /freqtrade/user_data/config.freqtrade.json

现在您可以使用 docker compose up 启动 webserver。这假设配置已启用并为 Docker 配置了 webserver(监听端口 = 0.0.0.0)。

后续步骤

安装完成后,您可以: