gyro CLI kurulumu ve ilk komutlar: Gyro hizmetlerinizi terminalden yönetin
1. gyro CLI nedir?
gyro, Gyro Public API'yi terminalden kullanan resmi araçtır. Bulut sunucular, SSH anahtarları, faturalar ve bakiye, alan adı ve DNS, Kurumsal Mail, Nesne Depolama, Uptime İzleme, destek talepleri ve diğer tüm hizmetleriniz tek araçla yönetilir. API'ye yeni bir özellik eklendiğinde CLI de güncellenir.
- Para harcayan ve geri dönüşsüz işlemlerde önce fiyatı ya da etkisini gösterip onay ister.
- Siparişlere tekrar korumasını (idempotency) kendiliğinden ekler; bağlantı koparsa ve komutu yeniden çalıştırırsanız ikinci sipariş verilmez.
- Çıktıyı tablo, JSON, YAML ya da düz metin olarak verir.
2. Kurulum
Linux ve macOS (önerilen)
curl -fsSL https://www.gyrohosting.com/cli/install.sh | sh
Betik işletim sisteminizi ve işlemci mimarinizi (amd64/arm64) algılar, son sürümü indirir, SHA-256 özetini ve (gpg kuruluysa) imzasını doğrular, ardından gyro'yu kurar. Belirli bir sürüm ya da kurulum klasörü için:
curl -fsSL https://www.gyrohosting.com/cli/install.sh | GYRO_VERSION=v1.3.2 GYRO_INSTALL_DIR=$HOME/.local/bin sh
Kurulum klasörü PATH'inizde değilse betik sonunda nasıl ekleyeceğinizi yazar.
Paket olarak (Debian/Ubuntu, RHEL/AlmaLinux/Rocky, Alpine)
Sürüm sayfasından mimarinize uygun .deb, .rpm ya da .apk dosyasını indirip kurun:
sudo apt install ./gyro_1.3.2_linux_amd64.deb # Debian / Ubuntu
sudo dnf install ./gyro_1.3.2_linux_amd64.rpm # AlmaLinux / Rocky / Fedora
Windows
Aynı sürüm sayfasından gyro_<sürüm>_windows_amd64.zip (ARM işlemcili cihazlarda windows_arm64) dosyasını indirin, içindeki gyro.exe'yi bir klasöre çıkarın ve o klasörü PATH'e ekleyin.
Docker
docker run --rm -e GYRO_TOKEN ghcr.io/gyro-hosting/gyro server list
Kurulumu doğrulayın
gyro version
gyro 1.3.2 … API 2.3.0 gibi bir satır görmelisiniz. Yeni sürüm olup olmadığını gyro version --check söyler.
3. API anahtarını bağlama
gyro configure
Komut API anahtarınızı ister, anahtarı doğrular ve bir profile kaydeder. Profiller ~/.config/gyro/config.toml dosyasında yalnız sizin okuyabileceğiniz izinle (0600) durur. Anahtarı dosya yerine işletim sisteminin anahtar zincirinde tutmak için gyro configure --keyring kullanın.
Bağlantıyı kontrol edin:
gyro whoami # anahtarın adı ve izinleri
gyro context # etkin profil, API adresi ve anahtar durumu
Birden fazla hesap ya da ortam: her biri için ayrı profil oluşturun ve --profile ile seçin:
gyro configure --profile ajans-musterisi
gyro --profile ajans-musterisi server list
gyro context use ajans-musterisi # varsayılan profili değiştirir
CI ortamında (etkileşimsiz):
echo "$GYRO_TOKEN" | gyro configure --token-stdin --profile ci
Ya da hiç profil oluşturmadan GYRO_TOKEN ortam değişkenini tanımlamanız yeterlidir.
Anahtarı komut satırına açık yazmayın (gyro configure zaten gizli sorar); CI'da sistemin gizli değişken özelliğini kullanın. CI anahtarına yalnız gereken izinleri verin ve IP ile kısıtlayın.
4. İlk komutlar
gyro server list # bulut sunucularınız (PLAN ve REGION sütunlarıyla)
gyro service list # tüm ürün hatlarındaki hizmetleriniz
gyro location list # sipariş verilebilen bölgeler (eu-de-1 …) ve şehirleri
gyro plan list --location eu-de-1 # bir bölgedeki paketler ve fiyatlar (şehir adı da olur)
gyro image list # kurulabilir işletim sistemleri
gyro balance # hesap bakiyesi
gyro invoice list # faturalar
Her komutun ayrıntılı yardımı vardır: gyro server create --help.
5. Bulut sunucu açma
Önce yalnız fiyat teklifi alın; hiçbir şey sipariş edilmez:
gyro server create web-1 \
--plan standart-2-4 --location eu-de-1 \
--image ubuntu-24.04 --ssh-key ~/.ssh/id_ed25519.pub \
--dry-run
Fiyat uygunsa --dry-run olmadan çalıştırın. Komut fiyatı gösterip onayınızı ister; --wait eklerseniz sunucu hazır olana kadar bekler:
gyro server create web-1 \
--plan standart-2-4 --location eu-de-1 \
--image ubuntu-24.04 --ssh-key ~/.ssh/id_ed25519.pub --wait
| Seçenek | Açıklama |
|---|---|
--plan |
Paket adının kısa hali (standart-2-4, pro-2-8 …; hesap diliniz İngilizceyse standard-2-4) ya da ürün numarası; doğru adı gyro plan list gösterir, tek paket için gyro plan list --plan standart-2-4 |
--location |
Gyro bölgesi ya da şehir adı (İngilizce yazımıyla): eu-de-1 (Falkenstein), eu-de-2 (Nürnberg), eu-fi-1 (Helsinki), us-east-1 (Ashburn), us-west-1 (Hillsboro), ap-sg-1 (Singapur); liste gyro location list ile görünür |
--image |
İşletim sistemi, ör. ubuntu-24.04, debian-12 |
--ssh-key |
.pub dosyası, kayıtlı anahtar adı ya da numarası; yeni dosya ise yüklenir |
--cycle |
monthly (varsayılan), quarterly, semiannually, annually |
--user-data |
cloud-init betiği: doğrudan metin ya da @cloud-init.yaml |
--app |
Tek tıkla uygulama kurulumu |
CLI ile verilen siparişler hesap bakiyenizden ödenir; kayıtlı karttan çekim yapılmaz. Bakiye yetmezse komut hata verir ve sipariş oluşmaz.
6. Sık işler
gyro server ssh web-1 # sunucunun IP'sini bulup SSH ile bağlanır
gyro server ssh web-1 -- uptime # uzaktan tek komut çalıştırır
gyro server power reboot web-1 # düzgün yeniden başlat (on, off, shutdown, reset da var)
gyro server snapshot create <sunucu-no> # snapshot al
gyro server snapshot list <sunucu-no> # snapshot'lar ve kota
gyro server backup list <sunucu-no> # otomatik yedekler
gyro server rebuild web-1 --image debian-12 # DİSKİ SİLER, onay ister
gyro server delete web-1 --dry-run # neyin silineceğini gösterir
gyro server delete web-1 # sunucuyu iptal eder (onay ister); veri bekleme süresi sonunda silinir
Desteklenmeyen bir iş için API'yi doğrudan çağırabilirsiniz (GitHub CLI'daki gh api gibi):
gyro api request GET /cloud/servers
gyro api operations # tüm API işlemleri ve karşılık gelen CLI komutları
7. Betiklerde kullanım
# JSON çıktı + sorgu: yalnız IPv4 adresleri
gyro server list -o json --query "[].ipv4"
# Yalnız bir bölgedeki sunucuların IPv4 adresleri
gyro server list -o text --query "[?region=='eu-de-1'].ipv4"
# Yalnız kimlikler (döngülere uygun)
for id in $(gyro server list -q); do gyro server snapshot create "$id" --yes; done
# Onay sormadan (CI için), çıktı JSON
gyro server create ci-runner --plan standart-2-4 --location eu-de-1 \
--image ubuntu-24.04 --ssh-key ci-key --yes -o json
| Bayrak | İşe yarar |
|---|---|
| `-o json | yaml |
--query |
JMESPath sorgusu ile çıktıyı süzme |
-q |
Yalnız kimlikleri yazar |
-y, --yes |
Onay sormaz (betikler için; dikkatli kullanın) |
--debug |
HTTP isteklerini gösterir; anahtar ve gizli değerler maskelenir |
| `--lang tr | en` |
Kabuk tamamlama için: source <(gyro completion bash) (zsh, fish ve PowerShell de desteklenir). Sunucu ve SSH anahtarı kimlikleri API'den tamamlanır.
8. Sık sorulan sorular
CLI ücretli mi?
Hayır. CLI ve API ücretsizdir; yalnız sipariş ettiğiniz hizmetler ücretlidir.
Kurulum betiğini çalıştırmadan önce nasıl incelerim?
Haklısınız; önce indirip okuyun: curl -fsSL https://www.gyrohosting.com/cli/install.sh -o install.sh && less install.sh && sh install.sh. Betik indirdiği dosyanın özetini ve imzasını doğrular.
"insufficient_scope" hatası ne demek?
Anahtarınızda bu işlem için izin yok. API Kimlik Bilgileri sayfasında anahtarı düzenleyip gereken izni ekleyin.
Komut onay soruyor, betikte nasıl geçerim?
--yes ekleyin. Fiyatı önceden görmek için aynı komutu --dry-run ile çalıştırın.
Türkiye VDS ve fiziksel sunucularımı da yönetebilir miyim?
Evet: gyro vds …, gyro dedicated … ve tüm ürünler için gyro service … komutları var. Hangi işlemlerin desteklendiğini her komutun --help çıktısı gösterir.
CLI'yı nasıl güncellerim?
Kurulum betiğini yeniden çalıştırın ya da yeni .deb/.rpm paketini kurun. gyro version --check yeni sürüm olup olmadığını söyler.
Altyapınızı dosyada tanımlayıp sürüm kontrolünde tutmak istiyorsanız Terraform daha uygundur: aynı API'yi kullanan resmi sağlayıcımız Terraform Registry'de yayında.
Sıradaki adım
- Altyapıyı kodla yönetin: Terraform ile Gyro Bulut sunucusu rehberi.
- Tüm komutların arkasındaki uçlar: Gyro geliştirici belgeleri
Geri bildiriminiz için teşekkürler!