Alibaba Cloud DevOps Flow dapat membangun gambar kontainer dalam pekerjaan pipeline dan menerapkannya ke host menggunakan Docker.
Buat pipeline penerapan Docker
Pada halaman utama Flow, klik New Pipeline dan pilih templat Java · Test, build image.
-
Pada tahap Pipeline Source, klik Add Pipeline Source dan pilih Codeup sebagai sumber kode. Konfigurasikan service connection, repositori kode (pilih
springboot), dan cabang default (pilihmaster). Aktifkan Source Code Trigger, lalu klik Add. -
Pada tahap Build Image, klik tugas Build and push images to ACR (Personal Edition). Pilih service connection yang telah diotorisasi serta wilayah dan repositori ACR. Atur tag dan Dockerfile Path. Gunakan Dockerfile contoh spring-boot Alibaba Cloud DevOps sebagai referensi.
Atur tag menjadi
${DATETIME}untuk menghasilkan timestamp secara otomatis. Untuk Image Cache, pilih Remote Cache.
Konfigurasi pekerjaan penerapan Docker
Pada New Stage, klik New Task, lalu pilih .
Pada panel pemilihan tugas, pilih Deployment di sebelah kiri, kemudian pilih tugas Docker Deployment.
-
Pada tugas Docker Deployment, pilih host group yang sudah ada atau buat host group baru. Atur Execution User menjadi
root, lalu tulis skrip penerapan di editor Deployment Script. Contohnya:docker run $image, di mana$imagemereferensikan output hulu atau variabel kustom.CatatanAnda harus menginstal Docker pada host sebelum melakukan penerapan.
-
Konfigurasi skrip penerapan Docker.
-
Untuk menerapkan dari repositori pribadi, definisikan
DOCKER_USERNAMEdanDOCKER_PASSWORDsebagai variabel pipeline. Buka , lalu klik New Variable.Aktifkan sakelar Secret untuk kedua variabel agar nilainya disembunyikan.
-
Tambahkan perintah login berikut ke dalam skrip penerapan. Ganti alamat registri dengan URL repositori Anda.
echo ${DOCKER_PASSWORD} | docker login --username ${DOCKER_USERNAME} --password-stdin registry.cn-hangzhou.aliyuncs.com
-
-
Tambahkan variabel. Tersedia dua jenis:
-
Variabel output hulu: Referensikan artefak build dari tugas hulu (gambar Alibaba Cloud atau gambar kustom). Konfigurasikan variabel output
image. -
Variabel kustom: Disuntikkan sebagai variabel lingkungan pada host selama eksekusi. Misalnya, atur
appnamemenjadiflow-examplesebagai nama kontainer. Di bagian Variables, aturimagemenjaditag.$(DATETIME)danappnamemenjadiflow-example. Dalam kebijakan penerapan, atur metode jeda menjadi Pause for the first batch dan jumlah batch menjadi2. -
Contoh perintah untuk menjalankan kontainer Docker:
docker run -d --name ${appname} ${image}
-
-
Konfigurasikan kebijakan penerapan untuk meminimalkan dampak rilis yang tidak stabil.
Jalankan pipeline dan lihat detail penerapan
Setelah pipeline selesai, buka , lalu klik Deployment Details untuk melihat batch penerapan dan log. Halaman detail menampilkan status tugas sebagai Completed, host target 10.0.0.26 online dengan ID instans i-bp13r1mbmowyr79fbi1m dan nama instans with-flow-ecs. Klik Logs pada kolom Actions untuk melihat log penerapan.