Este guia explica como compilar e implantar a Instância do Bot MagicTradeBot usando dois métodos suportados: Docker para ambientes containerizados e Systemd para gerenciamento de serviços em sistemas Linux tradicionais.
🛠️ 1. Compilando a Instância do Bot (Golang)
O núcleo do bot do MagicTradeBot é escrito em Go e pode ser compilado para diferentes ambientes.
🔧 Compilar para uso local (Systemd)
go build -o magictradebot main.go
Isso gerará um executável chamado magictradebot
no diretório atual.
🐳 Compilar e construir para Docker
Crie um arquivo Dockerfile
na raiz do seu projeto:
# Dockerfile
FROM golang:1.22-alpine AS builder
WORKDIR /app
COPY . .
RUN go build -o magictradebot main.go
# Imagem final
FROM alpine:latest
WORKDIR /app
COPY --from=builder /app/magictradebot .
COPY config.yaml .
CMD ["./magictradebot"]
Em seguida, construa a imagem:
docker build -t magictradebot-bot-instance .
🐳 2. Implantando a Instância do Bot com Docker
Passo 1: Preparar o arquivo de configuração
Garanta que seu arquivo config.yaml
esteja no mesmo diretório ou seja montado no momento da execução.
Passo 2: Executar o container
docker run -d \
--name=bot-bybit-01 \
-v $(pwd)/config.yaml:/app/config.yaml \
--restart=always \
magictradebot-bot-instance
Use docker logs -f bot-bybit-01
para visualizar os logs em tempo real.
Opcional: Docker Compose
version: '3.9'
services:
tradingbot:
image: magictradebot-bot-instance
container_name: bot-bybit-01
restart: always
volumes:
- ./config.yaml:/app/config.yaml
🧩 3. Implantando a Instância do Bot com Systemd
Passo 1: Mover o executável
sudo mv magictradebot /usr/local/bin/
sudo chmod +x /usr/local/bin/magictradebot
Passo 2: Criar o arquivo de unidade Systemd
sudo nano /etc/systemd/system/magictradebot.service
[Unit]
Description=Instância MagicTradeBot
After=network.target
[Service]
ExecStart=/usr/local/bin/magictradebot
WorkingDirectory=/opt/magictradebot
Restart=always
RestartSec=5
StandardOutput=journal
StandardError=journal
User=ubuntu
[Install]
WantedBy=multi-user.target
Passo 3: Ativar e iniciar o serviço
sudo systemctl daemon-reexec
sudo systemctl daemon-reload
sudo systemctl enable magictradebot
sudo systemctl start magictradebot
Verificar logs
journalctl -u magictradebot -f
✅ Recomendações
- 📁 Mantenha um
config.yaml
separado para cada instância para escalabilidade - 🔐 Use HTTPS para APIs e variáveis de ambiente para gerenciamento seguro de credenciais
- 📦 Prefira Docker para isolamento e portabilidade
- 🛡️ Monitore a atividade do bot com ferramentas de log como LogDNA, Grafana Loki, etc.