İçeriğe geç

Sunucuda çalıştırma

IDE botunu sadece açıkken çalıştırır. Botu sürekli çevrimiçi tutmak için projeyi bir sunucuya kopyala. Sunucuda IDE ile aynı motor (@makecord/runtime) çalıştığı için bot aynı şekilde davranır.

Proje olduğu gibi yayına hazır: package.json, Dockerfile ve docker-compose.yml zaten içinde.

  • Bot her sunucuda çalışacaksa makecord.json’dan devGuildId’yi kaldır. Global komutların Discord’da görünmesi biraz sürebilir.
  • Botun ihtiyaç duyduğu her secret’ın .env.example’da listelendiğinden emin ol.
  1. Proje klasörünü sunucuya kopyala, örneğin git clone veya scp ile. Sunucuda Node.js 22.12 veya daha yenisi kurulu olmalı.

  2. Örnekten .env oluştur ve değerleri gir:

    Terminal window
    cp .env.example .env
    nano .env
  3. Kur ve başlat:

    Terminal window
    npm install
    npm start

npm start terminali kapatınca durur. Botu çalışır tutmak ve yeniden başlatmadan sonra otomatik açmak için bir process yöneticisi kullan, örneğin pm2: pm2 start npm --name botum -- start.

Sunucuda runtime, IDE ile konuşmak yerine okunabilir log’lar yazar:

19:42:07 INFO ● ready — Botum#4821 is online in 3 servers
19:42:08 INFO Registered 2 commands (global): greet, ping
  • Akışların: Değişen *.flow.json dosyalarını sunucuya kopyala ve botu yeniden başlat.
  • Motor: Yeni sürüm çıktığında, örneğin bir Discord API değişikliğinden sonra, npm update @makecord/runtime çalıştır (veya Docker imajını yeniden derle).