Ücretsiz bir bot barındırıcı, konteyner uykuya dalana ya da hizmet bir olayın ortasında kapanana kadar çalışır. systemd'li 3$'lık bir VPS, botu gerçekten çevrimiçi tutar. Bu, nasıl-yapılır rehberidir; daha dolu anlatım ve müzik botu notları için bir VPS'te Discord botu barındırma ve Discord botları için VPS kullanım senaryosuna bak. Ayrılmış IP gerekmez — bir Discord botu yalnızca giden bağlantılar kurar, o yüzden bir NAT planı (aylık 3$'dan) idealdir.
1. Çalışma zamanını ve botunu kur (Node örneği)
apt update && apt install -y curl git
curl -fsSL https://deb.nodesource.com/setup_22.x | bash -
apt install -y nodejs
git clone https://github.com/you/your-bot.git /opt/bot
cd /opt/bot && npm ci --omit=dev
2. Token'ı bir env dosyasında tut
cat >/opt/bot/.env <<'EOF'
DISCORD_TOKEN=your_token_here
EOF
chmod 600 /opt/bot/.env
3. Restart=always'lı systemd hizmeti
# /etc/systemd/system/discordbot.service
[Unit]
Description=Discord Bot
After=network.target
[Service]
WorkingDirectory=/opt/bot
ExecStart=/usr/bin/node index.js
EnvironmentFile=/opt/bot/.env
Restart=always
RestartSec=5
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable --now discordbot
journalctl -u discordbot -f
Restart=always onu 7/24 yapan şeydir — sabah 3'te işlenmemiş bir reddetme, botu ölü bırakmak yerine yeniden başlatır. (Daha fazlası bir systemd hizmeti oluşturma yazısında.)
Bunun yerine Python mı?
Aynı desen — bir venv ve discord.py, birim venv'in Python'una işaret ederek:
ExecStart=/opt/bot/.venv/bin/python bot.py
Notlar
- Birkaç bot mu? Birimi her bot için kopyala (
discordbot-a.service, …), ya da her birini Docker'ın--restart unless-stopped'ıyla bir konteynerde çalıştır. - Müzik botu mu?
ffmpegekle ve Micro/Small'a yüksel — ses kodlaması buradaki CPU isteyen tek şeydir. Trafik her planda ölçümsüzdür, o yüzden akış faturayı şişirmez.
Nano aylık 3$, yaklaşık bir dakikada root, KYC yok, kripto ile ödeme — bir bot projesi bitince atılabilecek kadar ucuz. Aynı desen Telegram botları için.
Yorumlar
Henüz yorum yok. İlk olun.