Penyebaran berkelanjutan untuk aplikasi dalam kontainer dengan Azure DevOps

Dalam panduan langkah demi langkah ini, Anda akan mempelajari cara membuat saluran yang terus-menerus membangun dan menyebarkan aplikasi dalam kontainer untuk operasi Hari 2 dengan Azure DevOps. Setiap kali Anda mengubah kode dalam repositori yang berisi Dockerfile, citra akan didorong ke Azure Container Registry Anda, dan manifes kemudian disebarkan ke Azure Kubernetes Service atau Azure App Service.

Azure DevOps memungkinkan Anda untuk meng-host, membangun, merencanakan, dan menguji kode Anda dengan alur kerja gratis. Menggunakan Azure Pipelines sebagai salah satu alur kerja ini memungkinkan Anda untuk menyebarkan aplikasi Anda dengan CI / CD yang bekerja dengan platform dan cloud apa pun. Alur didefinisikan sebagai file YAML di direktori root repositori Anda.

Prasyarat

Sebelum memulai tutorial ini, Anda harus:

  • Kontainerisasi dan sebarkan aplikasi web ASP.NET atau Java Anda menggunakan Azure Migrate App Containerization.
  • Akun GitHub, di mana Anda dapat membuat repositori. Jika Anda tidak memilikinya, Anda dapat membuatnya secara gratis.
  • Organisasi Azure DevOps. Jika Anda tidak memilikinya, Anda dapat membuatnya secara gratis. (Organisasi Azure DevOps berbeda dari organisasi GitHub Anda. Anda dapat memberi organisasi DevOps dan organisasi GitHub Anda nama yang sama jika Anda ingin perataan di antara mereka.)
    Jika tim Anda sudah memilikinya, pastikan Anda adalah administrator proyek Azure DevOps yang ingin Anda gunakan.
  • Kemampuan untuk menjalankan jaringan alur pada agen yang dihosting Microsoft. Anda dapat membeli pekerjaan paralel atau Anda dapat meminta tingkat gratis. Untuk meminta tingkat gratis, ikuti petunjuk di artikel ini. Harap dicatat bahwa mungkin diperlukan waktu 2-3 hari kerja untuk memberikan tingkat gratis.

Temukan artefak

Alat Azure Migrate secara App Containerization otomatis menghasilkan artefak yang dapat digunakan untuk mengonfigurasi alur kerja CI/CD untuk aplikasi Anda menggunakan Azure Pipelines. Artefak dihasilkan setelah penyebaran aplikasi selesai melalui alat. Anda dapat menemukan artefak sebagai berikut -

  1. Buka mesin yang menjalankan alat Azure Migrate App Containerization.
  2. Navigasikan ke direktori C:\ProgramData\Microsoft Azure Migrate App Containerization. Jika Anda tidak dapat menavigasi ke C:\ProgramData, pastikan untuk memilih opsi untuk menampilkan item Tersembunyi di bawah Tampilan di penjelajah file.
  3. Pilih direktori yang sesuai dengan IP/FQDN mesin sumber. Mesin sumber adalah mesin yang ditentukan dalam alat App Containerization yang menjalankan aplikasi yang dimasisasi.
  4. Untuk aplikasi Java
    • Navigasikan ke JavaTomcatWebApp\Artifacts.
    • Navigasikan ke direktori Catalina\localhost. Jika Anda tidak menemukan direktori ini, maka coba navigasi ke direktori yang sesuai dengan nama mesin Tomcat dan nama host.
    • Temukan folder aplikasi di dalam direktori ini.
  5. Untuk aplikasi ASP.NET
    • Navigasikan ke IISAspNetWebApp.
    • Temukan folder aplikasi di dalam direktori ini.

Upload artefak untuk GitHub

Anda harus mengunggah artefak ke repositori sumber yang akan digunakan dengan Azure DevOps.

  1. Masuk ke akun GitHub Anda.
  2. Ikuti langkah-langkah dalam artikel ini untuk membuat repositori baru.
  3. Langkah selanjutnya adalah mengunggah artefak berikut ke repositori ini.
    • Untuk aplikasi Java, pilih folder dan file berikut di folder aplikasi pada mesin yang menjalankan alat App Containerization.
      • Folder MandatoryArtifacts
      • folder manifes
      • Folder OptionalArtifacts
      • Dockerfile
      • berkas Entryscript.sh
      • file azure-pipelines.yml
    • Untuk aplikasi ASP.NET, pilih folder dan file berikut di folder aplikasi pada mesin yang menjalankan alat App Containerization.
      • folder manifes
      • Membangun folder
      • file azure-pipelines.yml

Masuk ke Azure Pipelines

Masuk ke Azure Pipelines. Setelah Anda masuk, browser Anda masuk ke https://dev.azure.com/my-organization-name dan menampilkan dasbor Azure DevOps Anda.

Dalam organisasi yang Anda pilih, buat proyek. Jika Anda tidak memiliki proyek apa pun di organisasi Anda, Anda melihat layar Buat proyek untuk memulai. Jika tidak, pilih tombol Buat Project di sudut kanan atas dasbor.

Menambahkan koneksi layanan

Sebelum Anda membuat alur, Anda harus terlebih dahulu membuat koneksi layanan Anda karena Anda akan diminta untuk memilih dan memverifikasi koneksi Anda di template. Koneksi layanan akan memungkinkan Anda untuk terhubung ke Azure Container Registry saat menggunakan templat tugas dan ke langganan Azure tempat Anda ingin menyebarkan aplikasi.

  1. Di sudut kiri bawah, pilih Pengaturan proyek > Koneksi layanan.
  2. Pilih koneksi layanan baru, pilih opsi Docker Registry > Azure Container Registry untuk jenis koneksi layanan yang Anda butuhkan, dan pilih Berikutnya.
  3. Pilih metode autentikasi, dan pilih Berikutnya.
  4. Masukkan parameter untuk koneksi layanan. Daftar parameter berbeda untuk setiap jenis koneksi layanan. Untuk informasi selengkapnya, lihat daftar jenis koneksi layanan dan parameter terkait.
  5. Pilih Simpan untuk membuat koneksi.
  6. Validasi koneksi, setelah dibuat dan parameter dimasukkan. Tautan validasi menggunakan panggilan REST ke layanan eksternal dengan informasi yang Anda masukkan, dan menunjukkan apakah panggilan berhasil.
  7. Ulangi langkah yang sama untuk membuat koneksi layanan ke Langganan Azure Anda dengan memilih koneksi > layanan baru Azure Resource Manager.
  8. Perhatikan ID sumber daya untuk kedua koneksi layanan.

Membuat alur

Sekarang setelah Anda membuat kedua koneksi layanan, Anda dapat mengonfigurasi alur Anda. Alur YAML telah secara otomatis dibuat oleh alat App Containerization dan dapat dikonfigurasi sebagai berikut -

  1. Pergi ke Pipelines, dan kemudian pilih New Pipeline.
  2. Menelusuri langkah-langkah wizard dengan terlebih dahulu memilih GitHub sebagai lokasi kode sumber Anda.
  3. Anda dapat diarahkan ke GitHub untuk masuk. Jika demikian, masukkan informasi masuk GitHub Anda.
  4. Saat daftar repositori muncul, pilih repositori Anda.
  5. Anda mungkin diarahkan ke GitHub untuk menginstal aplikasi Azure Pipelines. Jika demikian, pilih Setujui & menginstal.
  6. Ketika alur baru Anda muncul, tinjau YAML untuk melihat apa yang dilakukannya.
  7. Di YAML, sediakan ID sumber daya untuk koneksi layanan Azure Container Registry sebagai nilai variabel dockerRegistryServiceConnection.
  8. Menyediakan ID sumber daya untuk koneksi layanan Azure Resource Manager sebagai nilai untuk variabel dockerRegistryServiceConnection.
  9. Ketika Anda siap, Simpan untuk melakukan alur baru ke repositori Anda.

Alur Anda adalah semua pengaturan untuk membangun dan menyebarkan dalam kontainer Anda untuk operasi Hari 2. Anda dapat menyesuaikan alur Anda untuk memenuhi kebutuhan organisasi Anda.