Uygulamaları bir Git deposundan ECS örneklerine veya ESS ölçeklendirme gruplarına dağıtın.
Çalışma mantığı
Bir Auto Scaling (ESS) grubuna dağıtım yapıyorsanız dağıtım sırasında ölçeklendirme etkinlikleri duraklatılır ve sonuç ne olursa olsun dağıtım tamamlandığında otomatik olarak devam eder.
Her dağıtımda önce durdurma sonra başlatma sırası izlenir: Önce durdurma betiği çalışır, ardından başlatma betiği çalışır.
-
Dağıtım oluşturun ve yayınlayın.
Uygulamanın OSS'deki kaynak dosya konumunu başlatma ve durdurma betikleriyle birlikte belirtin.
Bir yayınlama görevi oluşturun, bir yayınlama modu seçin ve dağıtımı hedef uygulama grubuna yayınlayın.
-
Otomatik dağıtım süreci.
Dağıtım bilgilerini alın: Git deposu ayrıntıları ile başlatma/durdurma betikleri.
Kodu belirtilen dalından çalışma dizinindeki
code_deploy_applicationklasörüne çekin.Mevcut uygulamayı durdurmak için durdurma betiğini çalıştırın.
Yeni uygulama sürümünü başlatmak için başlatma betiğini çalıştırın.
Kullanım notları
Yalnızca Linux örnekleri desteklenir.
Başlatma ve durdurma betikleri Shell betiği olmalıdır.
Yordam
-
Bir uygulama oluşturun ve bir ECS örneğini içe aktarın.
-
ECS örneğiniz yoksa ECS konsolu - Özel Başlatma sayfasında genel IP adresine sahip bir Linux örneği oluşturun.
Önerilen görüntüler: Alibaba Cloud Linux 3.2104 LTS 64-bit veya Ubuntu 22.04 64-bit. Örnek betikler bu görüntüleri hedefler. Farklı bir görüntü kullanıyorsanız betikleri değiştirin.
ECS konsolu - Uygulama yönetimi sayfasına gidin ve bir uygulama ile bir uygulama grubu oluşturmak ayrıca ECS örneğini uygulama grubuna aktarmak için Create from Existing Resources öğesine tıklayın.
-
-
Bir dağıtım oluşturun.
-
Örnek kodu Git deponuza forklayın.
Gitee veya GitHub hesabı gerektirir. Çin anakarasındaki örnekler için Gitee kullanın.
ECS konsolu - Uygulama yönetimi sayfasına gidin. Uygulamalarım sekmesinde hedef uygulamanızın adına tıklayın.
Uygulama ayrıntıları sayfasında Deployment sekmesini seçin ve ardından Create Deployment öğesine tıklayın.
-
Create Deployment sayfasında RevisionType değerini Git Repo olarak ayarlayın parametreleri yapılandırın ve ardından OK öğesine tıklayın.
-
Git deposu bilgileri: Kodunuzun depolandığı deponuzu belirtin.
İlk kullanımda Git deposu erişimini yetkilendirmek için ekrandaki talimatları izleyin.
Çalışma dizini: Başlatma ve durdurma betiklerinin çalıştığı dizin. Örnek:
/root/deploy. Kod bu dizindekicode_deploy_applicationklasörüne çekilir.-
Alibaba Cloud Linux
# Note: The code is downloaded to the code_deploy_application folder within the working directory. # Start the current version of the application. start_application() { cd ./code_deploy_application set -e yum install -y maven-3.5.4 java -jar sample-spring-1.0-SNAPSHOT.jar & } start_applicationUbuntu
# Note: The code is downloaded to the code_deploy_application folder within the working directory. # Start the current version of the application. start_application() { cd ./code_deploy_application set -e apt update apt install -y maven java -jar sample-spring-1.0-SNAPSHOT.jar & } start_application -
# Stop the application, if it is running. stop_application() { PID=$(ps -ef | grep "sample-spring-1.0-SNAPSHOT.jar" | grep -v "grep" | awk '{print $2}') if [ -n "$PID" ]; then kill -9 $PID fi } stop_application
-
-
Dağıtım listesine geri dönün oluşturduğunuz dağıtımı bulun ve Deploy öğesine tıklayın. Hedef grubu seçin ve dağıtımı başlatmak için OK öğesine tıklayın.
-
Sonucu doğrulayın.
Hedef örneğin ayrıntılar sayfasına gidin. Connect öğesine tıklayın ve Workbench öğesini seçin. Terminale erişmek için ekrandaki istemleri izleyin.
curl http://localhost:8080/hellokomutunu çalıştırın.Alibaba Spring Sample!yanıtı başarılı bir dağıtımı gösterir.
Anahtar parametreler
|
Parametre |
Açıklama |
|
Platform |
Kodunuzun barındırıldığı Git platformunu seçin. |
|
Sahip |
Depo sahibini seçin. İlk kullanımda yetkilendirme gerekir. |
|
Organizasyon |
Kişisel veya organizasyon deposu seçin. |
|
Depo |
Kod deposunu seçin. |
|
Dal |
Dağıtılacak dalı seçin. |
|
CommitId |
Otomatik olarak doldurulur. Sistem bir dal seçtikten sonra en son CommitId değerini alır. |
|
Çalışma dizini |
Başlatma ve durdurma betiklerinin çalıştığı dizin.
|
|
Uygulama başlatma betiği |
Uygulamayı başlatmak için Shell betiği. |
|
Uygulama durdurma betiği |
Uygulamayı durdurmak için kullanılan shell betiği. Örneğin aşağıdaki betik
|