Skip to content

Deployment

mkdir700 edited this page Feb 21, 2025 · 3 revisions

运行环境

  • Linux(推荐)/macOS/Windows
  • Docker/Podman
  • Git

本文以 Ubuntu 20.04 为例

安装 Docker/Podman

两者都可以,任选其一:

准备工作

API 申请

ShyftHelius 都需要注册。

TG Bot

在 Telegram 中搜索 @BotFather ,发送 /newbot,然后回复机器人的名称(必须是 bot 结尾)

1737530500298.png

然后保存这个 API Key。

接着,我们需要对 Bot 的 Commands 进行配置,步骤如下:

  1. 发送 mybots
  2. 选择刚注册的 bot
  3. 依次进入 Edit Bot -> Edit Commands
  4. 发送下方内容
copytrade - 跟单交易
monitor - 监控钱包
set - 设置
buy - 用命令买
sell - 用命令卖
wallet - 钱包管理
asset - 我的持仓

开始

拉取代码仓库:

git clone https://github.com/mkdir700/open-sol-bot.git
cd open-sol-bot

配置文件

首先复制一份配置文件:

cp example.config.toml config.toml

Endpoints

支持多个 RPC 节点,优先使用第一个。我们注册了 shyft、helius,所以推荐优先使用这些私有节点

image

将 helius 的 RPC URL 填写到 endpoints 中。

[rpc]
network = "mainnet-beta"
endpoints = [
  "https://api.mainnet-beta.solana.com",
] # 多个 rpc 节点, 优先使用第一个
commitment = "finalized"

API

配置 helius 和 shyft 的 APIKey

[api]
helius_api_base_url = "https://api.helius.xyz/v0"
helius_api_key = ""
shyft_api_base_url = "https://api.shyft.to"
shyft_api_key = ""
pumpportal_api_data_url = "wss://pumpportal.fun/api/data"

TG Bot

将申请到的 Bot APIKey 配置在下方位置。

[tg_bot]
token = ""  # bot api key
mode = "public" # private or public, private 意味着机器人是私有的,只有使用激活码才能访问,public 意味着机器人公开,任何人都可以访问
manager_id = 123444  # 管理员 id,管理员无视激活码

如果需要使用 private 模式,需要获取你当前 TG 账号的 ID

搜索这个 Bot @userinfobot,然后点 start 就可以知道你当前账号的 ID 了,如图所示:

1737531281696.png

运行

执行下方命令启动程序:

docker compose up -d

如果使用的 podman 则执行:

podman compose up -d

更新

通过 Git 拉取最新的代码:

git pull

然后重新构建并启动:

docker compose up -d --build

如果使用 podman 则执行:

podman compose up -d --build

卸载

docker compose down

然后删除代码仓库即可

常见问题

如何查看日志

在代码根目录执行:

docker compose logs -f

查看指定的服务,如查看 bot 的日志:

docker compose logs -f bot

查看 error 日志:

在项目下的 logs 目录中可查看到:

image