Uygulamaları Serverless App Engine (SAE) konsolundan dağıtmaya ek olarak, IntelliJ IDEA için Alibaba Cloud Toolkit (Cloud Toolkit) eklentisini kullanarak da dağıtabilirsiniz.
Ön koşullar
JDK 1.8 veya sonraki bir sürümü indirin ve yükleyin.
-
IntelliJ IDEA 2018.3 veya sonraki bir sürümü indirin ve yükleyin.
NotResmi JetBrains eklenti sunucuları Çin anakarası dışında bulunur. İndirme işlemlerinin yavaş olması veya kurulum hatalarıyla karşılaşmanız durumunda
.
-
IntelliJ IDEA'da Cloud Toolkit'i yükleyin ve yapılandırın.
.
Arka plan
Cloud Toolkit, Alibaba Cloud tarafından sağlanan ücretsiz bir IDE eklentisidir. Bir Alibaba Cloud hesabına kaydolabilir veya mevcut bir hesabınızı kullanarak Cloud Toolkit'i ücretsiz olarak indirip IntelliJ IDEA'ya yükleyebilirsiniz.
Uygulamanızı yerel ortamda geliştirip, hata ayıklama ve test ettikten sonra bu eklentiyi kullanarak uygulamayı hızlıca Serverless App Engine (SAE) üzerine dağıtabilirsiniz.
Uygulamayı SAE'ye dağıtın
Cloud Toolkit, uygulamaların WAR paketi, JAR paketi veya görüntü olarak SAE üzerine dağıtılmasını destekler.
IntelliJ IDEA'nın sol tarafındaki Project bölmesinde dağıtılacak projeye sağ tıklayın ve bağlam menüsünden seçeneğini seçin.
-
Deploy to SAE iletişim kutusunda uygulama dağıtım parametrelerini belirtin ve ardından Apply düğmesini tıklayın.
Aşağıdaki tabloda parametreler açıklanmaktadır.
Parametre Açıklama Bölge Uygulamanın bulunduğu bölge. Ad alanı Uygulamanın ad alanı. Uygulama Uygulamanın adı. Oluşturma - Maven Build: Uygulamayı Maven kullanarak oluşturur. Varsayılan olarak, dağıtım paketini oluşturmak için bir Maven hedefi eklenir.
- Upload File: Uygulamayı yüklediğiniz bir WAR paketi veya JAR paketinden oluşturur.
- Image: Uygulamayı bir konteyner görüntüsünden oluşturur. Dağıtım için görüntü adresi gereklidir.
- Gradle Build: Desteklenmez.
-
İsteğe bağlı: Deploy to SAE iletişim kutusunda uygulamanın gelişmiş parametrelerini yapılandırmak için Advanced düğmesini tıklayın.
NotGelişmiş parametreleri yapılandırmazsanız dağıtım işlemi varsayılan olarak
ayarlarını kullanır.
Aşağıdaki tabloda parametreler açıklanmaktadır.
Tür Parametre Örnek değer Açıklama JAR paketi dağıtımı Paket Sürümü 1.0.1 Dağıtılan uygulamanın sürümü. JDK Open JDK 8 Uygulamanın bağımlı olduğu JDK sürümü. Web Konteyneri apache-tomcat-7.0.91 Uygulamanın bağımlı olduğu Tomcat sürümü. Başlatma komutu ayarları Jar Başlatma Seçenekleri custom-option Uygulama JAR paketi için başlatma seçenekleri. Varsayılan başlatma komutu şudur: $JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgsJar Başlatma Argümanları custom-args Uygulama JAR paketi için başlatma argümanları. Varsayılan başlatma komutu şudur: $JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgsDağıtım stratejisi ayarları Güncelleme Stratejisi {"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":1},"grayUpdate":{"gray":1}} Dağıtım stratejisi. Örnekler: - Örnek 1: Bir örnek için kanarya sürümü, ardından toplu işler arasında 1 dakikalık bekleme süresiyle iki otomatik toplu iş halinde toplu dağıtım.
{"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":1},"grayUpdate":{"gray":1}} - Örnek 2: Toplu işler arasında bekleme süresi olmadan iki otomatik toplu iş halinde toplu dağıtım.
{"type":"BatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":0}}
Ana bilgisayar bağlama ayarları Özel Ana Bilgisayar Takma Adı [{"hostName":"samplehost","ip":"127.0.0.1"}] Konteynerdeki özel ana bilgisayar eşlemeleri. Uygulama sağlık denetimi ayarları Canlılık {"exec":{"command":["sleep","5s"]},"initialDelaySeconds":10,"timeoutSeconds":11} Konteyner için canlılık denetimi. Bir konteyner bu denetimi başarısız olursa sistem onu sonlandırır ve yeniden başlatır. Şu anda yalnızca komut tabanlı denetimler desteklenmektedir: {"exec":{"command":["sleep","5s"]},"initialDelaySeconds":10,"timeoutSeconds":11}Hazır Olma Durumu {"exec":{"command":["sleep","6s"]},"initialDelaySeconds":15,"timeoutSeconds":12} Uygulama için hazır olma durumu denetimi. Bir konteyner bu denetimi tekrar tekrar başarısız olursa sistem onu sonlandırır ve yeniden başlatır. Bu denetimi başarısız olan konteynerler Server Load Balancer (SLB) örneklerinden trafik almaz. Dağıtım ayarları Minimum Hazır Örnek Sayısı 1 Uygulama için minimum çalışan örnek sayısı. Toplu İş Bekleme Süresi 10 Toplu dağıtımda toplu işler arasındaki bekleme süresi (saniye cinsinden). Ortam değişkeni ayarları Envs [{"name":"envtmp","value":"0"}] Konteyner için ortam değişkenleri. - Örnek 1: Bir örnek için kanarya sürümü, ardından toplu işler arasında 1 dakikalık bekleme süresiyle iki otomatik toplu iş halinde toplu dağıtım.
-
Run düğmesini tıklayın.
Uygulamanın başarıyla dağıtıldığını aşağıdaki yöntemlerden biriyle doğrulayabilirsiniz:
IntelliJ IDEA'nın Console bölmesindeki çalıştırma günlüğünde
BUILD SUCCESSmesajı görüntülenir.SAE konsolu üzerindeki uygulama değişiklik kaydı Success durumunu gösterir.
Maven oluşturma görevlerini yönetin
Deploy to SAE sayfasında Before launch bölümündeki Maven oluşturma görevlerini ekleyebilir, silebilir, değiştirebilir ve taşıyabilirsiniz.
IntelliJ IDEA'nın sol tarafındaki Project bölmesinde dağıtılacak projeye sağ tıklayın ve bağlam menüsünden seçeneğini seçin.
-
Deploy to SAE sayfasının Before launch bölümünde Maven görevlerini yönetin.
-
Görev ekleme
-
Before launch bölümünün sağındaki

(Run Maven Goal) simgesini tıklayın ve açılan listeden Run Maven Goal seçeneğini belirleyin.
Select Maven Goal iletişim kutusunda mevcut proje için bir modül seçin ve Command line alanına oluşturma komutunu girin.
OK düğmesini tıklayın.
-
-
Görev silme: Silinecek görevi seçin ve Before launch bölümünün sağındaki

simgesini tıklayın.
-
Görev değiştirme: Değiştirilecek görevi seçin, Before launch bölümünün sağındaki

(Select Maven Goal) simgesini tıklayın, Select Maven Goal iletişim kutusunda görev bilgilerini güncelleyin ve ardından OK düğmesini tıklayın.
-
Görev taşıma: Taşınacak görevi seçin ve yürütme sırasını değiştirmek için Before launch bölümünün sağındaki

veya

simgelerini tıklayın.
-
Çok modüllü bir proje dağıtın
Çok modüllü bir proje, bağımsız olarak geliştirilen ancak birbirine bağımlı modüller içerir. Cloud Toolkit'i kullanarak çok modüllü bir projeden belirli bir alt modülü dağıtabilirsiniz.
Çok modüllü bir Maven projesinin alt modülünü dağıtmak için Deploy to SAE sayfasındaki Before launch bölümünde ilgili alt modülün oluşturma görevini listenin sonuna taşımanız gerekir.
Çok modüllü projeler yaygın bir proje yapısıdır. toolkit-maven-plugin, çok modüllü projelerin dağıtımı için aşağıdaki iki yöntemi destekler.
-
Yöntem 1: Paketleme ve dağıtım komutlarını üst projede çalıştırın.
Bu yöntem için toolkit-maven-plugin 1.0.3 veya sonraki bir sürüm gerekir.
Üst projede
toolkit:deploykomutunu çalıştırırken-Ddeploy_artifactsparametresini ekleyerek dağıtılacak alt modüllerin artifact ID'lerini belirtin. Birden fazla alt modülü dağıtmak için artifact ID'leri virgül (,) ile ayırın.Örneğin, bir CarShop projesi aşağıdaki alt modülleri içerir:
carshop itemcenter-api itemcenter detailitemcenter ve detail alt modüllerini aynı anda dağıtmak için carshop dizininde aşağıdaki komutu çalıştırın:
mvn clean package toolkit:deploy -Ddeploy_artifacts=itemcenter,detailVarsayılan olarak eklenti, uygulamaları itemcenter ve detail modüllerinin dizinlerindeki
.edas_config.yamldosyalarına göre dağıtır. Alternatif olarak-Dedas_configparametresini ekleyerek bir yapılandırma dosyası da belirtebilirsiniz. -
Yöntem 2: Paketleme ve dağıtım komutlarını alt modülde çalıştırın. Bu yöntem, toolkit-maven-plugin'in tüm sürümleri tarafından desteklenir.
Önce üst projede
installkomutunu çalıştırarak alt modül bağımlılıklarını yerel Maven deposuna yükleyin. Ardından dağıtmak istediğiniz alt modülün dizinine gidin vetoolkit:deploykomutunu çalıştırın.