Ana içeriğe geç

Pterodactyl Kontrol Paneli

Bu makalede

Bilgi

Pterodactyl, ücretsiz ve açık kaynaklı bir oyun sunucusu yönetim panelidir. Minecraft, CS2, Rust ve 50'den fazla diğer oyun için sunucuların bir web arayüzü üzerinden merkezi olarak yönetilmesini sağlar.

Pterodactyl. Temel Özellikler

Pterodactyl, şunları birleştiren modern bir oyun sunucusu yönetim çözümüdür:

  • 50'den fazla oyuna destek: Popüler oyun sunucularının hızlı kurulumu için hazır şablonlar sağlar. Yazılımı, bağımlılıkları ve başlangıç parametrelerini otomatik olarak yapılandırır; oyun sürümü seçimi ve özel şablon eklemeyi destekler.
  • Hassas kaynak yönetimi: RAM, CPU, disk alanı ve sunucular arası öncelik tahsisini kontrol eder. Aşırı yüklenmeleri önler, kaynakları kotalara göre tahsis eder ve kararlılık için SWAP belleği kullanır.
  • Güvenilir otomatik yedeklemeler: Veri seçimi (tüm sunucu veya ana dosyalar) ile esnek, zamanlanmış yedekleme sağlar. Yedekleri yerel olarak veya bulutta (S3, FTP, GDrive) şifreleme ve anında kurtarma ile depolar.
  • Verimli çoklu sunucu yeteneği: Her sunucuyu izole bir Docker konteyneri içinde çalıştırır. Yükü düğümler (nodes) arasında otomatik olarak dağıtır, çakışma olmadan portlar atar ve ilgili sunucuların gruplandırılmasına olanak tanır.
  • Esnek çok kullanıcılı erişim: 50'den fazla ayrıntılı izin ile rol tabanlı bir model (önceden ayarlanmış + özel roller) aracılığıyla izinleri yönetir. Geçici erişimi, işlem denetimini ve iki faktörlü kimlik doğrulamayı destekler.
  • Gerçek zamanlı yönetim konsolu: İnteraktif bir terminal (SSH'a benzer) ile web arayüzü üzerinden tam kontrol sağlar. Renkli biçimlendirme, komut geçmişi, hızlı işlem düğmeleri ve olay bildirimleri içerir.
  • Gerçek zamanlı istatistik izleme: Kaynak kullanım grafiklerini (CPU, RAM, disk, ağ) ve oyun metriklerini (çevrimiçi oyuncular, TPS, ping) görüntüler. Özel paneller oluşturmaya, uyarılar yapılandırmaya ve verileri CSV olarak dışa aktarmaya olanak tanır.
  • Basitleştirilmiş mod/eklenti yönetimi: Otomatik mod kurulumu, sürüm ve bağımlılık yönetimi için yerleşik bir mağaza sunar. Sözdizimi vurgulamalı ve güncelleme bildirimli görsel bir yapılandırma düzenleyicisi içerir.
  • Otomatik güncellemeler: Kesintisiz sistem çalışması sağlar. Oyun sunucularını test modu ve hatalarda geri alma özelliğiyle zamanlanmış olarak günceller. Kontrol panelini tek bir komutla (php artisan p:upgrade), uyumluluğu kontrol ederek ve veri kaybı olmadan veritabanını taşıyarak günceller. Wings daemon'ı otomatik olarak günceller, farklı Linux dağıtımlarıyla uyumluluğu korur.

Çalıştırma Özellikleri

ID Yazılım Adı Uyumlu OS VM BM VGPU GPU Min CPU (Çekirdekler) Min RAM (GB) Min HDD/SSD (GB) Özel Alan Adı Aktif
326 Pterodactyl Ubuntu 24.04 + + + + 1 1 - Hayır SİPARİŞ VER

Ana Sistem Bileşenleri:

Bileşen Amaç
Panel Web yönetim arayüzü (PHP/Laravel). Sunucu yönetimi için admin paneli ve kullanıcı arayüzü sağlar
Wings Fiziksel oyun sunucusu başlatma daemon'ı (Go). Oyun sunucularının çalıştırılacağı makinelere ayrı olarak kurulur
Database Yapılandırmaları, kullanıcıları, sunucuları ve ayarları depolamak için MariaDB
Docker Konteynerleştirme platformu; Wings operasyonu ve oyun sunucusu izolasyonu için gereklidir

Yapılandırma Dosyaları

Yol Amaç
/var/www/pterodactyl/.env Ana Panel ayarları: veritabanı bağlantısı, Redis, APP_URL, APP_KEY
/var/www/pterodactyl/storage/logs/laravel.log Panel operasyon günlükleri (uygulama hataları, istekler)
/var/log/nginx/pterodactyl.app-error.log Panel için NGINX web sunucusu günlükleri
/etc/pterodactyl/config.yml Wings yapılandırması: yetkilendirme token'ı, Panel URL'si, Docker ayarları. Wings kurulumu sırasında oluşturulur
/var/lib/pterodactyl/volumes/ Oyun sunucusu veri dizini: dünya dosyaları, yapılandırmalar, eklentiler. Wings kurulumundan sonra oluşturulur

Oyun Kaynak Önerileri

Oyun sunucusu başına yaklaşık gereksinimler:

Oyun RAM CPU Disk
Minecraft (Vanilla/Paper) 2-4 GB 2+ çekirdek 5-10 GB
Minecraft modlu (Forge/Fabric) 4-8 GB 4+ çekirdek 10-20 GB
CS2 / CS:GO 4-6 GB 4+ çekirdek 15-20 GB
Rust 8-12 GB 4+ çekirdek 20-30 GB
ARK: Survival Evolved 8-16 GB 6+ çekirdek 30-50 GB
Terraria 1-2 GB 2+ çekirdek 2-5 GB
Valheim 4-6 GB 4+ çekirdek 5-10 GB

Pterodactyl Kurulumundan Sonra Başlangıç

Siparişinizi ödedikten sonra, kayıtlı e-posta adresinize sunucunuzun çalışmaya hazır olduğuna dair bir bildirim gelecektir. Bu e-posta, VPS IP adresinin yanı sıra bağlantı için bir kullanıcı adı ve şifre içerecektir. Şirketimizin müşterileri, donanımı sunucularda ve API kontrol panelinde — Invapi üzerinden yönetirler.

Sunucu kontrol panelindeki Configuration >> Tags sekmesinde veya e-postada bulunabilecek yetkilendirme verileri şunlardır:

  • Bağlantı: webpanel etiketindedir. Admin paneline erişmek için ana bağlantıya /admin ekleyin;
  • Kullanıcı Adı: admin;
  • Şifre: Yazılım kurulumundan sonra sunucu çalışmaya hazır olduğunda e-posta ile adresinize gönderilir.

İlk Giriş

  1. Bir web tarayıcısı açın ve Pterodactyl panel adresinize gidin
  2. Login butonuna tıklayın:

  3. Başarılı yetkilendirmeden sonra ana panel sayfasına yönlendirileceksiniz.

  4. Admin paneline erişmek için butonuna tıklayın:

Kullanıcı Oluşturma

  1. Admin panelinin sol menüsünde, Users bölüm ismine tıklayın;
  2. Sağ üst köşedeki Create New butonuna tıklayın:

  3. Gerekli alanları doldurun:

    • Username: kullanıcı adı;
    • Email: kullanıcı e-posta adresi;
    • First Name: ad;
    • Last Name: soyad;
    • Password: şifre (en az 8 karakter, büyük/küçük harf ve rakam içermelidir);
  4. Gerekiyorsa, yönetici hakları vermek için Administrator satırında Yes seçeneğini seçin;
  5. Create User butonuna tıklayın:

Konum (Location) Oluşturma

Konum (Location) Nedir?

Konum, düğümlerin (nodes) coğrafi konuma veya amaca göre mantıksal olarak gruplandırılmasıdır. Sunucuları organize etmek için kullanılır, örneğin: "EU", "US", "Asia", "Production", "Testing". Kullanıcılar konumları doğrudan görmezler; bu bir yönetim aracıdır.

  1. Sol menüden Locations seçeneğini seçin;
  2. Sağ üst köşedeki Create New butonuna tıklayın:

  3. Alanları doldurun:

    • Short Code: kısa konum kodu (örn. "US1", "EU1");
    • Description: konum açıklaması (örn. "ABD'deki veri merkezi");
  4. Create butonuna tıklayın:

Düğüm (Node) Oluşturma

Düğüm (Node) Nedir?

Düğüm, Wings aracılığıyla oyun sunucularının çalıştırıldığı fiziksel veya sanal bir sunucudur. Her düğümün kendi kaynakları (CPU, RAM, disk) vardır ve aynı anda birden fazla oyun sunucusuna hizmet verebilir.

Düğüm Oluşturmadan Önce Hazırlık

Düğüm oluşturmadan önce şunlardan emin olun:

  • Sunucuda Docker yüklüdür (HOSTKEY imajlarında önceden yüklüdür);
  • Düğüm için bir IP adresiniz veya alan adınız var;
  • Güvenlik duvarında (firewall) 8080 (Wings API) ve 12333 (Wings/Daemon SSL iletişimi) portları açılacaktır.

Panel Üzerinden Düğüm Oluşturma

  1. Admin panelinin sol menüsünden Nodes seçeneğini seçin;

  2. Sağ üst köşedeki Create New butonuna tıklayın:

  3. Temel ayarları doldurun:

    • Name: benzersiz düğüm adı (örn. hostkey-us-node1);
    • Location: daha önce oluşturulan konumu seçin;
    • Public: düğümün kullanıcılar tarafından görünür olması gerekiyorsa kutucuğu işaretleyin;
    • FQDN: panel alan adı (örn. pterodactyl50514.hostkey.in) veya IP adresini belirtin;
    • Communicate Over SSL: Panel HTTPS kullanıyorsa kutucuğu işaretleyin;
    • Behind Proxy: düğüm bir proxy arkasındaysa devre dışı bırakın.
  4. Kaynak ayarlarını yapılandırın:

    • Daemon Server File Directory: /var/lib/pterodactyl/volumes (değiştirmeyin);
    • Total Memory: MB cinsinden kullanılabilir RAM miktarını belirtin (örn. yedek payı ile birlikte 6GB sunucu için 4608);
    • Memory Over-Allocation: 0 olarak belirtin (aşırı tahsis yok);
    • Total Disk Space: MB cinsinden kullanılabilir disk alanını belirtin (örn. yedek payı ile birlikte 120GB disk için 102400);
    • Disk Over-Allocation: 0 olarak belirtin (aşırı tahsis yok);
    • Daemon Port: 8080 (varsayılan olarak bırakın);
    • Daemon SFTP Port: 2022 (varsayılan olarak bırakın).

  5. Create Node butonuna tıklayın.

HTTPS Kullanırken Önemli

Panel HTTPS üzerinden çalışıyorsa, FQDN alanında IP adresi değil, bir alan adı belirtmelisiniz. SSL etkinken bir IP adresi belirtmek doğrulama hatasına neden olacaktır.

Hepsi Bir Arada Yapılandırma İçin Örnek Ayarlar (4 vCore / 6GB RAM / 120GB SSD)

    Name: hostkey-us-node1
    Location: US1
    Public: ☑
    FQDN: pterodactyl50514.hostkey.in
    Communicate Over SSL: ☑
    Behind Proxy: ☐

    Total Memory: 4608 MB (sistem için 1.5GB bırakarak)
    Memory Over-Allocation: 0
    Total Disk Space: 102400 MB (sistem için 20GB bırakarak)
    Disk Over-Allocation: 0

Tahsisatları (Allocations) Yapılandırma

Bir düğüm oluşturduktan sonra tahsisatları yapılandırmanız gerekir; bunlar oyun sunucularına atanmak üzere kullanılacak IP adresi ve port kombinasyonlarıdır.

  1. Düğüm oluşturulduktan sonra sayfası otomatik olarak açılacaktır. Allocation sekmesine gidin;

  2. Assign New Allocations bölümünde (sağ taraf), alanları doldurun:

    • IP Address: sunucu IP adresini girin;
    • IP Alias: bir açıklama belirtin (örn. Main IP) veya boş bırakın;
    • Ports: bir port aralığı belirtin (örn. Minecraft sunucuları için 25565-25570).
  3. Yeşil Submit butonuna tıklayın:

  4. Oluşturulan tahsisatlar Existing Allocations tablosunda (sol taraf) görünecektir. Her satır, bir oyun sunucusuna atanabilecek ayrı bir IP:port kombinasyonunu temsil eder.

Not

Tahsisatlar yapılandırılmadan bu düğüm üzerinde sunucu oluşturamazsınız. Portları içeren en az bir IP adresi eklemeniz gerekir.

Port Önerileri

  • Minecraft: 25565-25570 (standart port 25565);
  • CS2/CS:GO: 27015-27020 (standart port 27015);
  • Rust: 28015-28020 (standart port 28015);
  • Valheim: 2456-2460 (standart port 2456).

Wings Kurulumu

Çalışma İçin Kritik

Bir düğüm oluşturup tahsisatları yapılandırdıktan sonra, sunucuya Wings kurmalısınız. Wings olmadan düğüm "Offline" durumunda görünecek ve oyun sunucularını başlatamayacaktır.

Sunucuya SSH ile bağlanın ve komutları çalıştırın:

Yapılandırma için bir dizin oluşturun:

mkdir -p /etc/pterodactyl
Wings'i indirin:

curl -L -o /usr/local/bin/wings "https://github.com/pterodactyl/wings/releases/latest/download/wings_linux_amd64"
Çalıştırma izinlarını verin:

chmod u+x /usr/local/bin/wings
Kurulumu doğrulayın:

wings version

Wings sürümü görüntülenmelidir (örn. wings vv1.12.1).

Auto-Deploy ile Wings Yapılandırma (Önerilen)

  1. Admin panelinde, oluşturulan düğümün Configuration sekmesine gidin;

  2. Auto-Deploy bölümünde (sağ taraf), Generate Token butonuna tıklayın:

  3. Oluşturulan komutu kopyalayın. Şuna benzeyecektir:

        cd /etc/pterodactyl && wings configure --panel-url https://your-domain.com --token TOKEN --node 1
    

  4. Kopyalanan komutu sunucuda çalıştırın:

        cd /etc/pterodactyl && wings configure --panel-url https://pterodactyl50514.hostkey.in --token TOKEN --node 1
    

    Şu mesaj görünmelidir: Successfully configured wings.

  5. Oluşturulan yapılandırmayı doğrulayın:

        cat /etc/pterodactyl/config.yml
    

Bir systemd Servisi Oluşturma

Otomatik Wings başlatılması için bir systemd servisi oluşturun:

cat > /etc/systemd/system/wings.service <<'EOF'
[Unit]
Description=Pterodactyl Wings Daemon
After=docker.service
Requires=docker.service
PartOf=docker.service

[Service]
User=root
WorkingDirectory=/etc/pterodactyl
LimitNOFILE=4096
PIDFile=/var/run/wings/daemon.pid
ExecStart=/usr/local/bin/wings
Restart=on-failure
StartLimitInterval=180
StartLimitBurst=30
RestartSec=5s

[Install]
WantedBy=multi-user.target
EOF

Wings'i Başlatma

systemd yapılandırmasını yenileyin

systemctl daemon-reload
Otomatik başlatmayı etkinleştirin ve Wings'i başlatın

systemctl enable --now wings
Durumu kontrol edin

systemctl status wings

Durum Active: active (running) olarak görünmelidir.

Operasyon Kontrolü

Wings günlüklerini kontrol edin:

journalctl -u wings -n 50

Günlükler şu mesajları içermelidir:

  • fetching list of servers from API - Wings Panele bağlandı;
  • configuring internal webserver - Wings web sunucusu başlatıldı;
  • sftp server listening for connections - SFTP sunucusu çalışıyor.

Sunucu dizini oluşturulmasını doğrulayın:

ls -la /var/lib/pterodactyl/volumes/

Admin Panelinde Durum Kontrolü

  1. Admin panelini açın: https://your-domain.com/admin;
  2. Şuraya gidin: Admin > Nodes > düğümünüz;
  3. Sayfayı yenileyin (F5);
  4. Sağ üst köşede yeşil Online durum göstergesi görünmelidir;
  5. About sekmesinde kaynak bilgileri (CPU, RAM, Disk) görüntülenmelidir.

Eğer Düğüm Online Durumunda Görünüyorsa

Düğüm tamamen yapılandırıldı ve oyun sunucuları oluşturmaya hazır!

Sorun Giderme

Düğüm Offline Durumunda Görünüyorsa

Wings durumunu kontrol edin:

systemctl status wings

Wings çalışmıyorsa, başlatın:

systemctl start wings

Hatalar için günlükleri kontrol edin:

journalctl -u wings -n 100

Yaygın sorunlar:

  1. Wings Panele bağlanamıyor:

    • Yapılandırmadaki panel URL'sini kontrol edin: cat /etc/pterodactyl/config.yml | grep remote;
    • Panel'e erişilebildiğinden emin olun: curl -I https://your-domain.com.
  2. 8080 Portu güvenlik duvarı tarafından engelleniyor:

    • Portu kontrol edin: netstat -tulpn | grep 8080;
    • Portu açın: ufw allow 8080/tcp.
  3. SSL sorunları:

    • Panel HTTPS kullanıyorsa, Wings de SSL ile çalışmalıdır;
    • /etc/pterodactyl/config.yml içindeki SSL ayarlarını kontrol edin.

Manuel Yapılandırma (Alternatif Yöntem)

Auto-Deploy çalışmazsa, Wings'i manuel olarak yapılandırabilirsiniz:

  1. Admin panelinde, düğümün Configuration sekmesine gidin;
  2. Soldaki metin alanından yapılandırma dosyası içeriğini kopyalayın;
  3. Sunucuda bir yapılandırma dosyası oluşturun:

    nano /etc/pterodactyl/config.yml
    

  4. Kopyalanan yapılandırmayı yapıştırın ve kaydedin (Ctrl+X, sonra Y, sonra Enter);

  5. Wings'i yeniden başlatın: systemctl restart wings;
  6. Durumu kontrol edin: systemctl status wings.

Nest (Yuva) Oluşturma ve Egg (Yumurta) Ekleme

Nest (Yuva) Oluşturma

  1. Sol menüden Nests bölümünü seçin;
  2. Sağ üst köşedeki Create New butonuna tıklayın:

  3. Alanları doldurun:

    • Name: nest adı (örn. "Minecraft");
    • Description: nest açıklaması;
  4. Save butonuna tıklayın:

Hazır Bir Egg (Yumurta) İndirin

  1. https://pelican-eggs.github.io/ web sitesini açın;

  2. İstediğiniz oyunu bulun:

    • Game Eggs bölümünde bir kategori seçin (örn. Minecraft);
    • İstediğiniz sunucu tipini bulun (örn. Paper, Vanilla, Forge);
  3. GitHub sayfasını açmak için sunucu adına tıklayın;

  4. egg-name.json dosyasını bulun (örn. egg-paper.json);

  5. Dosyaya tıklayın, ardından sağ üst köşedeki Raw butonuna tıklayın;

  6. Dosyayı kaydedin (Ctrl+S veya sağ tık > Save as).

Popüler Egg'ler

Egg'i Panele İçe Aktarın

  1. Admin panelinde, Nests bölümüne gidin;

  2. Sağ üst köşedeki Import Egg butonuna tıklayın:

  3. Choose File butonuna tıklayın ve indirilen .json dosyasını seçin;

  4. Import butonuna tıklayın:

Egg; tüm ayarlar, Docker imajları ve değişkenlerle birlikte içe aktarılacaktır.

İçe Aktarılan Egg'i Doğrulayın

  1. Egg listesinde içe aktarılanı bulun (örn. Paper);

  2. Ayarları görüntülemek için üzerine tıklayın;

  3. Aşağıdakilerin dolu olduğundan emin olun:

    • Docker Images: kullanılabilir imajların listesi;
    • Install Script: sunucu kurulum betiği;
    • Variables: ortam değişkenleri (sürüm, ayarlar).

Sunucu Oluşturma

  1. Sol menüden Servers seçeneğini seçin;

  2. Sağ üst köşedeki Create New butonuna tıklayın:

  3. Oluşturma formunu doldurun:

Temel Bilgiler:

  • Server Name: sunucu adı (örn. Test Minecraft Server);
  • Server Owner: listeden sahip kullanıcıyı seçin;
  • Server Description: açıklama (isteğe bağlı);
  • Start Server when Installed: kutucuğu işaretli bırakın.

Tahsisat Yönetimi:

  • Node: oluşturulan düğümü seçin;
  • Default Allocation: listeden IP adresi:port seçin;
  • Additional Allocations: boş bırakın.

Uygulama Özellik Limitleri:

  • Database Limit: 0;
  • Allocation Limit: 0;
  • ** Backup Limit**: 0.

Kaynak Yönetimi:

  • CPU Limit: 0 (limit yok);
  • Memory: 2048 MiB (başlangıç için 2GB);
  • Swap: 0 MiB;
  • Disk Space: 5120 MiB (5GB);
  • Block IO Weight: 500;
  • Enable OOM Killer: devre dışı bırakın.

Nest Yapılandırması:

  • Nest: Minecraft;
  • Egg: Paper (Sponge değil!);
  • Docker Image: Java 21;
  • Service Variables: varsayılan değerleri bırakın.

  • Sayfanın altındaki Create Server butonuna tıklayın;

  • Kurulumun tamamlanmasını bekleyin (durum Installing'den Offline'a dönecektir):

Sunucuyu Başlatma ve Yapılandırma

  1. Kurulumdan sonra, listeden sunucuyu açın (Admin > Servers):

  2. Kullanıcı panelini açın ( /admin olmadan), sunucu sahibi olarak giriş yapın;

  3. Start butonuna tıklayın:

  4. İlk çalıştırmada bir lisans kabul penceresi görünecektir:

  5. Minecraft EULA'yı kabul etmek için I Accept butonuna tıklayın;

  6. Sunucunun başlamasını bekleyin (durum Running olarak değişecektir):

Performans Kontrolü

Tarayıcınızda açın (IP adresini sizinkiyle değiştirin):

https://api.mcsrvstat.us/3/<IP adresi>:25565
Yanıt "online": true gösteriyorsa, sunucu çalışıyor ve oyuncular için erişilebilir durumdadır.

Bağlantı adresi:

<IP adresi>:25565

Not

Pterodactyl'in ana ayarları hakkında ayrıntılı bilgi geliştirici dokümanlarında yer almaktadır.

API ile Pterodactyl Sunucusu Sipariş Edin

Bu yazılımı API kullanarak kurmak için bu talimatları izleyin.