Alibaba Cloud DevOps Flow, işlem hattı görevlerinde konteyner görüntüleri oluşturmanıza ve bunları Docker kullanarak ana bilgisayarlara dağıtmanıza olanak tanır.
Docker Dağıtım İşlem Hattı Oluşturma
Flow ana sayfasında New Pipeline öğesini tıklayın ve Java · Test, build image şablonunu seçin.
Pipeline Source aşamasında Add Pipeline Source öğesini tıklayın ve kod kaynağı olarak Codeup seçeneğini belirleyin. hizmet bağlantısını, kod deposunu (
springbootseçin) ve varsayılan dalı (masterseçin) yapılandırın. Source Code Trigger özelliğini etkinleştirin ve Add düğmesini tıklayın.-
Build Image aşamasında Build and push images to ACR (Personal Edition) görevini tıklayın. Yetkilendirilmiş bir hizmet bağlantısı ve ACR bölgesi ile deposunu seçin. tag ve Dockerfile Path değerlerini ayarlayın. Referans almak için Alibaba Cloud DevOps spring-boot örnek Dockerfile dosyasını kullanabilirsiniz.
Zaman damgasını otomatik oluşturmak için tag değerini
${DATETIME}olarak ayarlayın. Image Cache için Remote Cache seçeneğini belirleyin.
Docker Dağıtım Görevini Yapılandırma
New Stage içinde New Task öğesini tıklayın ve yolunu izleyerek ilgili görevi seçin.
Görev seçim panelinde sol taraftan Deployment kategorisini seçin, ardından Docker Deployment görevini belirleyin.
-
Docker Deployment görevinde mevcut bir host group seçin veya yeni bir host group oluşturun. Execution User alanını
rootolarak ayarlayın ve Deployment Script düzenleyicisine bir dağıtım komut dosyası yazın. Örneğin,docker run $imagekomutunu kullanabilirsiniz; burada$imagebir önceki aşamanın çıkışına veya özel bir değişkene atıfta bulunur.NotDağıtımdan önce ana bilgisayar üzerine Docker yüklemeniz gerekir.
-
Docker dağıtım komut dosyasını yapılandırın.
-
Özel bir depodan dağıtım yapmak için
DOCKER_USERNAMEveDOCKER_PASSWORDdeğişkenlerini işlem hattı değişkeni olarak tanımlayın. menüsüne gidin ve New Variable düğmesini tıklayın.Değerlerin gizlenmesi için her iki değişken için de Secret anahtarını etkinleştirin.
-
Dağıtım komut dosyasına aşağıdaki giriş komutunu ekleyin. Kayıt defteri adresini kendi depo URL'nizle değiştirin.
echo ${DOCKER_PASSWORD} | docker login --username ${DOCKER_USERNAME} --password-stdin registry.cn-hangzhou.aliyuncs.com
-
-
Değişken ekleyin. İki tür değişken kullanılabilir:
Üst akış çıkış değişkenleri: Üst akış görevlerinden gelen derleme yapıtlarına (Alibaba Cloud görüntüleri veya özel görüntüler) başvurur.
imageçıkış değişkenini yapılandırın.Özel değişkenler: Çalıştırma sırasında ana bilgisayar üzerinde ortam değişkenleri olarak enjekte edilir. Örneğin, kapsayıcı adı olarak
appnamedeğeriniflow-exampleşeklinde ayarlayabilirsiniz. Variables bölümündeimagedeğerinitag.$(DATETIME)veappnamedeğeriniflow-exampleolarak belirleyin. Dağıtım ilkesinde duraklatma yöntemini Pause for the first batch olarak, yığın sayısını ise2olarak ayarlayın.-
Bir Docker kapsayıcısını çalıştırmak için örnek komut:
docker run -d --name ${appname} ${image}
Kararsız sürümlerin etkisini en aza indirmek için bir dağıtım ilkesi yapılandırın.
İşlem Hattını Çalıştırma ve Dağıtım Ayrıntılarını Görüntüleme
İşlem hattı tamamlandıktan sonra menüsüne gidin ve dağıtım yığınlarını ile günlüklerini görüntülemek için Deployment Details öğesini tıklayın. Ayrıntılar sayfasında görev durumu Completed olarak gösterilir; hedef ana bilgisayar 10.0.0.26 çevrimiçi durumdadır, örnek kimliği i-bp13r1mbmowyr79fbi1m ve örnek adı with-flow-ecs şeklindedir. Dağıtım günlüklerini görüntülemek için Actions sütunundaki Logs bağlantısını tıklayın.