Ana içeriğe geç

Uygulamalar

SolusVM 2'de siz ve kullanıcılarınız, önceden yüklenmiş uygulamalara sahip sanal sunucular oluşturarak zamandan ve kurulum çabalarından tasarruf edebilirsiniz. Uygulamalar, sizin ve siz kullanıcıların, bir sunucu oluşturulduktan hemen sonra veya oluşturulduktan kısa bir süre sonra projeleri çalışır hale getirmenize yardımcı olur.

SolusVM 2'de kutudan çıktığı gibi bir dizi uygulama yerleşik olarak bulunur ve kullanıma sunulur; örneğin, Plesk'te WordPress, MariaDB, NextCloud ve diğerleri. Ayrıca kendi özel uygulamalarınızı da ekleyebilirsiniz.

Önceden yüklenmiş lisanslara sahip uygulamalarla sanal sunucuları dağıtabilirsiniz. Şu anda yalnızca cPanel ve Plesk için lisanslamayı yapılandırabilirsiniz. Bunu yaparsanız, kullanıcılar özel cPanel veya Plesk ile sunucular oluşturduğunda, cPanel veya Plesk lisanslarını kendilerinin satın alıp yüklemelerine gerek kalmayacaktır.

Özel Uygulama Ekleme

Uygulama listesine özel uygulamalar ekleyebilirsiniz. Eklendikten sonra, siz ve kullanıcılarınız sunucu oluşturduğunuzda, özel uygulamalar da kurulum için uygun hale gelecektir.

Özel bir uygulama eklemek için:

  1. Uygulama görselini hazırlayın. İşletim sistemi tedarikçilerinden (örneğin, Ubuntu). İşletim sistemi görüntüsünde uygulama önceden yüklenmiş olabilir veya uygulama, bir sunucu oluşturulduğunda yüklenebilir.} ve [CentOS] alabileceğiniz işletim sistemi görüntüsünü temel alır. (https://cloud.centos.org/centos/){target=_blank

    Note

    Önceden yüklenmiş lisansa sahip özel bir uygulama ekliyorsanız bu adımı atlayın ve 2. adıma gidin.
    Önceden yüklenmiş lisanslara sahip özel uygulamalar, önceden hazırlanmış işletim sistemi görüntülerini kullanır.
    
  2. Resimler > Uygulamalar'a gidin ve ardından Uygulama Ekle'yi tıklayın.

  3. Uygulamanıza tanınabilir bir ad verin.

  4. Uygulama simgesini seçin. Hangi uygulamaları eklemek isteyebileceğinizi tahmin etmeye çalıştık. İstediğiniz uygulamanın simgesi listede yoksa, uygulamaların türlerini gösteren gri simgelerden birini seçin (örneğin, “Sunucu”, “Mağaza Sepeti” veya “Depolama”).

  5. cloud-init sürümünü seçin. Çoğu modern işletim sistemi (örneğin, CentOS Stream veya Ubuntu 22) "cloud-init v2"yi destekler.

    Önceden yüklenmiş lisansa sahip özel bir cPanel uygulaması ekliyorsanız v2-centos seçeneğini belirtin. Önceden yüklenmiş lisansa sahip özel bir Plesk uygulaması ekliyorsanız cloud-init sürümü Plesk'in çalışmasını istediğiniz işletim sistemine bağlıdır: CentOS'ta Plesk için v2-centos'u belirtin, Ubuntu'daki Plesk için —v2.

  6. Uygulama görüntüsünün URL'sini sağlayın.

    Önceden yüklenmiş lisansa sahip özel bir cPanel uygulaması ekliyorsanız aşağıdaki URL'yi belirtin:

    https://images.prod.solus.io/solus-io-centos-7-cpanel.qcow2
    

    Önceden yüklenmiş lisansa sahip özel bir Plesk uygulaması ekliyorsanız URL, Plesk'in çalışmasını istediğiniz işletim sistemine bağlıdır:

    • CentOS'ta Plesk:

      https://autoinstall.plesk.com/images/plesk-centos-7-latest.qcow2
      

    • Ubuntu'da Plesk:

      https://autoinstall.plesk.com/images/plesk-ubuntu-22-latest.qcow2
      

  7. Önceden yüklenmiş lisansa sahip özel bir cPanel veya Plesk uygulaması ekliyorsanız, daha önce oluşturduğunuz lisans entegrasyonunun adını seçin (örneğin, "cPanel Pro" veya "Plesk Web Admin Edition").

  8. Planlar alanı, bu yeni uygulama için yeni sanal sunucu oluşturmak amacıyla hangi planların kullanılabileceğini tanımlar. Uygulamaya bağlı olmayan planlar görünür olacak ancak yeni sanal sunucu oluşturma için seçilemez.

  9. Kullanıcılarınızın sunucu oluştururken uygulamayı görmesini ve yüklemesini istiyorsanız görünür tutun. Ayrıca, örneğin henüz üretime hazır değilse uygulamayı kullanıcılardan gizlemek isteyebilirsiniz. Bu durumda görünürlüğü kapatın.

  10. Oturum açma türünü seçin. Bu, uygulamanıza bağlıdır ve kullanıcıların uygulamada nasıl oturum açacağını tanımlar:

Note

    Özel bir cPanel uygulaması URL aracılığıyla oturum açmayı kullanır. Bir Plesk, "Script (JS)" oturum açma türünü kullanır.

- Uygulama URL ile giriş yapmayı kullanıyorsa “URL”yi seçin ve sağdaki alana giriş bağlantısını girin,
     örneğin, `https://{{ hostname }}/?login={{ login }}&password={{ password }}`

     ![](../../img/login-link.png)

     Kullanıcılar sunucu kartındaki giriş bağlantısına tıklayarak uygulamanıza giriş yapacaklardır.
     ve uygulamalarının kimlik bilgileri URL'nin içine aktarılacaktır.

     ![](../../img/server-login-link.png)

     Önceden yüklenmiş lisansa sahip özel bir cPanel uygulaması ekliyorsanız şu URL'yi belirtin: `https://{{ hostname }}:2087/`.

- “Komut Dosyası (JS)” oturum açma türünü seçerseniz, “Giriş bağlantısı komut dosyası” alanına JavaScript oturum açma komut dosyasını girin.
     Kullanıcılar sunucu kartındaki giriş bağlantısına tıklayarak uygulamanıza giriş yapacaklardır.
     ve uygulamalarının kimlik bilgileri bir POST isteği aracılığıyla gönderilecektir.

    Önceden yüklenmiş lisansa sahip özel bir Plesk uygulaması ekliyorsanız aşağıdaki oturum açma komut dosyasını belirtin:
        `                fetch('https://{{ domain }}:8443/api/v2/cli/admin/call', {                   body: '{ "params": [ "--get-login-link" ] }',                   headers: {                     Authorization: 'Basic '+ btoa('admin:{{ passwd }}'),                     "Content-Type": "application/json"                   },                   method: "POST"                 })                   .then(function(response) {                     if (!response.ok) {                       throw Error(response.statusText);                     }                     return response.json();                   })                   .then(function(data) {                     var link = data.stdout.split(/\r?\n/);                     openWindow(link[0]);                   })                   .catch(function() {                       openWindow('https://{{domain}}:8443/');                   });                `

-   Web tabanlı olmayan bazı uygulamalar için (örneğin veritabanları), kullanıcıların oturum açmak için kullanacağı kimlik bilgilerini göstermeniz gerekir.
     Bu durumda, “Bilgi (HTML)” seçeneğini seçin ve “Oturum açma bağlantısı komut dosyası” alanına oturum açma bilgilerini HTML kodu olarak girin.
     Kullanıcılar HTML formunda gördükleri kimlik bilgilerini kullanarak uygulamanıza giriş yapacaklardır.

     ![](../../img/application-success.png)

- Bazen hiçbir şekilde oturum açmanıza gerek kalmaz (örneğin, uygulama olarak özel bir işletim sistemi yapısı eklerseniz).
     Bu durumda "Hiçbiri" seçeneğini seçin.
  1. JSON şemasını düzenleyin. Kullanıcılar sunucu oluşturup uygulamanızı seçtiklerinde bu JSON şemasını temel alan dinamik formu göreceklerdir. Dinamik form genellikle uygulama yöneticisinin kimlik bilgilerini toplayan kayıt formudur. Örneğin, alanda bulunan örnek JSON aşağıdaki dinamik formu oluşturur:

    Önceden yüklenmiş lisansa sahip özel bir cPanel uygulaması ekliyorsanız aşağıdaki JSON şemasını belirtin:

    {
      "title": "cPanel",
      "description": "Create an exceptional hosting experience.\nIndustry leading hosting platform with world-class support.",
      "type": "object"
    }
    

    Önceden yüklenmiş lisansa sahip özel bir Plesk uygulaması ekliyorsanız aşağıdaki JSON şemasını belirtin:

    {
      "title": "Plesk",
      "description": "Next-Level server management platform",
      "type": "object",
      "required": [
        "domain",
        "user",
        "rootmail",
        "passwd"
      ],
      "properties": {
        "domain": {
          "type": "string",
          "title": "Hostname"
        },
        "user": {
          "type": "string",
          "title": "Username",
          "default": "admin"
        },
        "rootmail": {
          "type": "string",
          "format": "email",
          "title": "Administrators Email"
        },
        "passwd": {
          "type": "string",
          "title": "Password",
          "format": "password",
          "pattern": "^[a-zA-Z0-9_-]*$",
          "minLength": 5
        }
      }
    }
    

  2. "Kullanıcı veri şablonu" alanına, ilk sunucu önyüklemesinden hemen sonra "cloud-init" tarafından yürütülecek "cloud-config" betiğini sağlayın. Komut dosyası, uygulamanızın çalışır durumda olması için gerekli yapılandırma sonrası adımları içermelidir, örneğin: dinamik formda sağlanan kimlik bilgileriyle uygulamanın yöneticisini oluşturmak, kullanıcılar ve kullanıcı grupları oluşturma vb.

    Komut dosyası YAML formatında yazılmıştır. Komut dosyasının nasıl yazılacağına ilişkin referans için, cloud-init belgelerini kullanın. Komut dosyasını yazmak için büyük olasılıkla aşağıdaki değişkenleri kullanmanız gerekecektir:

    • SolusVM 2 sistem değişkenleri (bunları görmek için “Sistem Değişkenleri”ne tıklayın)
    • Önceki adımda JSON şemasında belirttiğiniz değişkenler; örneğin, {{ login }} ve {{ password }}.

    Önceden yüklenmiş lisansa sahip özel bir cPanel uygulaması ekliyorsanız aşağıdaki komut dosyasını belirtin:

    write_files:
      - path: /root/setup.sh
        permissions: '0755'
        content: |
          #!/bin/bash
          HOSTNAME={{ hostname }}
          match=$(echo "${HOSTNAME}" | grep -oP '^(?!\-)(?:[a-zA-Z\d\-]{0,62}[a-zA-Z\d]\.){1,126}(?!\d+)[a-zA-Z\d]{1,63}$')
          if [ -z "$match" ]; then
            hostnamectl set-hostname "${HOSTNAME}.local.domain"
            HOSTNAME="${HOSTNAME}.local.domain"
          fi
          setenforce 0
          /usr/local/cpanel/bin/set_hostname "${HOSTNAME}"
          /usr/local/cpanel/cpkeyclt
    runcmd:
      - sh /root/setup.sh
      - rm -f /root/setup.sh
    

    Önceden yüklenmiş lisansa sahip özel bir Plesk uygulaması ekliyorsanız aşağıdaki komut dosyasını belirtin:

    #cloud-config
    write_files:
      - path: /root/config.ini
        permissions: '0755'
        content: |
          domain="{{ domain }}"
          rootpw="{{ passwd }}"
          user="{{ user }}"
          passwd="{{ passwd }}"
          activation_key="{{ externalIntegrationResponse.keyIdentifiers.activationCode }}"
          rootmail="{{ rootmail }}"
    runcmd:
      - [ curl, "https://raw.githubusercontent.com/solusio/applications/master/plesk/setup", -o, "/root/setup.sh" ]
      - [ chmod, +x, "/root/setup.sh" ]
      - sh /root/setup.sh | while IFS= read -r line; do printf "%s %s\n" "$(date)" "$line"; done >>/var/log/logfile
      - echo "complete" > /var/www/vhosts/default/htdocs/__setup_complete.html
      - rm -r /root/setup.sh
    

    Not

    Önceden yüklenmiş lisansa sahip özel Plesk uygulaması için {{ externalIntegrationResponse.keyIdentifiers.activationCode }} değişkenini kullanmanız gerekir. Bu değişken, lisanslama API'sinin yanıtındaki etkinleştirme kodunu içerir.

    Not

    Özel bir uygulamanın hangi JSON şemasına, cloud-config betiğine veya başka bir ayara sahip olması gerektiğinden emin değilseniz, ilgili yerleşik uygulamayı (varsa) referans olarak kullanın. Yerleşik uygulama ayarlarını görmek için, Görüntüler > Uygulamalara gidin ve uygulamanın yanındaki simgesini tıklayın.

  3. Kaydet'i tıklayın.

Özel uygulamanız eklendi.

Önceden Yüklenmiş Lisansla Özel Uygulama Ekleme

Önceden yüklenmiş lisansa sahip bir uygulamayı iki aşamada eklersiniz. Öncelikle uygulamanın lisanslama API'si ile entegrasyon kurarsınız. Daha sonra, oluşturulan sanal sunuculara lisans vermek için entegrasyonu kullanacak özel bir uygulama eklersiniz.

Note

Lisanslamayı yalnızca özel uygulamalar için yapılandırabilirsiniz.

Önceden yüklenmiş lisansa sahip bir cPanel uygulaması eklemek için:

  1. cPanel, LLC ile iletişime geçin ve sizin için bir hesap oluşturmasını isteyin. Entegrasyonunuzu ayarlamak için hesabın kimlik bilgilerini kullanacaksınız.
  2. Ayarlar > Harici Lisanslama Entegrasyonları'na gidin ve ardından Entegrasyon Ekle'yi tıklayın.
  3. Entegrasyonunuza tanınabilir bir ad verin; örneğin "cPanel Pro".
  4. "Tür" altında "cPanel Manage2"yi saklayın.
  5. cPanel Manage2 hesabınızın kullanıcı adını ve şifresini belirtin.
  6. cPanel ile önceden yüklemek istediğiniz lisans türünün paket kimlikleri ve grup kimliğini (örneğin, sırasıyla '21159' ve '3520903') listesini belirtin. Mevcut tüm paket kimliklerini ve grup kimliklerini görün.
  7. Kaydet'i tıklayın.
  8. Bu prosedürü kullanarak özel bir cPanel uygulaması ekleyin.

Note

cPanel Manage2'de sanal sunucuların önceden yüklenmiş lisanslar almasını engelleyebilecek bir sınırlama vardır. Bir cPanel lisansı aynı IP adresini kullanan çeşitli sunucularda 15 dakika içinde 8 kez etkinleştirilirse, cPanel Manage2, cPanel Manage2 hesabınız için diğer tüm lisans etkinleştirmelerini engelleyecektir. Bu, kullanıcıların artık önceden yüklenmiş cPanel lisanslarını alamayacakları anlamına gelir. Kullanıcılar cPanel'de oturum açtıklarında aşağıdaki hata mesajını da göreceklerdir: "cPanel lisans sunucusu, lisansın çok fazla makinede (600) etkinleştirildiğini yanıtladı". Sorunu çözmek için cPanel müşteri hizmetleri ekibiyle iletişime geçin.

Önceden yüklenmiş lisansa sahip bir Plesk uygulaması eklemek için:

  1. Plesk Ortak Programına katılın ve sizin için bir hesap oluşturmayı isteyin. Entegrasyonunuzu ayarlamak için hesabın kimlik bilgilerini kullanacaksınız.

  2. Ayarlar > Harici Lisanslama Entegrasyonları'na gidin ve ardından Entegrasyon Ekle'yi tıklayın.

  3. Entegrasyonunuza tanınabilir bir ad verin; örneğin "Plesk Web Admin Edition".

  4. "Tip" altında "Plesk KA"yı seçin.

  5. Plesk KA hesabınızın kullanıcı adını ve şifresini belirtin.

  6. Ürün sabitini belirtin (örneğin, PLESK-12-WEB-HOST-1M). Bu sabit, Plesk'e önceden yüklenecek lisans türünü belirleyecektir. Mevcut tüm ürün sabitlerine bakın.

    Note

    Hangi ürün sabitini belirtmeniz gerektiğinden emin değilseniz Plesk satış yöneticinizle iletişime geçin.
    
  7. Kaydet'i tıklayın.

  8. Bu prosedürü kullanarak özel bir Plesk uygulaması ekleyin.

Uygulamaları Yönetme

Düzenleme

Her zaman özel bir uygulamayı düzenleyebilirsiniz.

Bir uygulamayı düzenlemek için:

  1. Resimler > Uygulamalar'a gidin ve düzenlemek istediğiniz özel uygulamanın yanındaki simgesini tıklayın.

    Note

    Yerleşik uygulamaları düzenleyemezsiniz.
    
  2. İstediğiniz değişiklikleri yapın ve ardından Kaydet'i tıklayın.

Görünürlüğü Yönetmek

Varsayılan olarak tüm yerleşik uygulamalar görünür durumdadır: kullanıcılar, sunucu oluştururken uygulamaları görebilir ve yükleyebilirler. Bazı durumlarda uygulamaları gizlemek isteyebilirsiniz, örneğin:

  • Özel bir uygulama yüklediniz ancak uygulama henüz üretime hazır değil. Uygulamayı kullanıcılarınıza sunmadan önce test etmek istiyorsunuz.
  • Kurulum için hangi yerleşik uygulamaların mevcut olduğunu değiştirmek istiyorsunuz.

Bir uygulamanın görünürlüğünü değiştirmek için:

  1. Görüntüler > Uygulamalar'a gidin.
  2. İstediğiniz uygulama için görünürlüğü açın veya kapatın.

İndiriliyor

Uygulama görselini indirmek isteyebilirsiniz. Örneğin, özel bir uygulama eklediyseniz ve uygulama görseli URL'sinin doğru olup olmadığını kontrol etmek istiyorsanız faydalı olabilir.

Bir uygulamanın görselini indirmek için:

  1. Resimler > Uygulamalar'a gidin.
  2. İndirmek istediğiniz uygulamanın yanındaki simgesine tıklayın.

Managing Default VM Settings with Applications

Applications provide similar controls for VM settings as Operating Systems. You can use Applications to define default configurations for your VMs upon creation or reinstallation.