Tutorial: Menyiapkan aplikasi untuk AKS
Berlaku untuk: AKS di Azure Stack HCI 22H2, AKS di Windows Server
Dalam tutorial ini, bagian satu dari tujuh, aplikasi multi-kontainer disiapkan untuk digunakan pada kluster Kubernetes saat Anda menggunakan Azure Kubernetes Service diaktifkan oleh Azure Arc. Alat pengembangan yang ada seperti Docker Compose digunakan untuk membangun dan menguji aplikasi secara lokal.
Anda mempelajari cara:
- Mengkloning sumber daya aplikasi sampel dari GitHub
- Membuat citra kontainer dari sumber daya aplikasi sampel
- Menguji aplikasi multi-kontainer di lingkungan Docker lokal
Setelah selesai, aplikasi berikut berjalan di lingkungan pengembangan lokal Anda:
Dalam tutorial selanjutnya, gambar kontainer diunggah ke Azure Container Registry, lalu disebarkan ke dalam kluster Kubernetes.
Sebelum Anda mulai
Tutorial ini mengasumsikan pemahaman dasar tentang konsep core Docker seperti kontainer, citra kontainer, dan perintah docker
. Untuk informasi awal tentang dasar-dasar kontainer, lihat Mulai menggunakan Docker.
Untuk menyelesaikan tutorial ini, Anda memerlukan lingkungan pengembangan Docker lokal yang menjalankan kontainer Linux. Docker menyediakan paket yang mengonfigurasi dirinya sendiri di Windows.
Catatan
AKS tidak menyertakan komponen Docker yang diperlukan untuk menyelesaikan setiap langkah dalam tutorial ini. Oleh karena itu, kami sarankan untuk menggunakan lingkungan pengembangan Docker penuh.
Mendapatkan kode aplikasi
Aplikasi sampel yang digunakan dalam tutorial ini adalah aplikasi pemungutan suara dasar yang terdiri dari komponen web front-end dan instans Redis back-end. Komponen web dikemas ke dalam citra kontainer kustom. Instans Redis menggunakan gambar yang tidak diubah dari Docker Hub.
Gunakan GitHub untuk mengkloning aplikasi sampel ke lingkungan pengembangan Anda:
git clone https://github.com/Azure-Samples/azure-voting-app-redis.git
Ubah ke direktori kloning:
cd azure-voting-app-redis
Di dalam direktori adalah kode sumber aplikasi, file Docker Compose yang telah dibuat sebelumnya, dan file manifes Kubernetes. File-file ini digunakan di seluruh set tutorial. Konten dan struktur direktori adalah sebagai berikut:
azure-voting-app-redis
│ azure-vote-all-in-one-redis.yaml
│ docker-compose.yaml
│ LICENSE
│ README.md
│
├───azure-vote
│ │ app_init.supervisord.conf
│ │ Dockerfile
│ │ Dockerfile-for-app-service
│ │ sshd_config
│ │
│ └───azure-vote
│ │ config_file.cfg
│ │ main.py
│ │
│ ├───static
│ │ default.css
│ │
│ └───templates
│ index.html
│
└───jenkins-tutorial
config-jenkins.sh
deploy-jenkins-vm.sh
Membuat gambar kontainer
Anda dapat menggunakan Docker Compose untuk mengotomatiskan pembuatan gambar kontainer dan penyebaran aplikasi multi-kontainer.
Gunakan file docker-compose.yaml
sampel untuk membuat citra kontainer, mengunduh citra Redis, dan memulai aplikasi:
docker-compose up -d
Setelah selesai, gunakan perintah citra docker untuk melihat citra yang dibuat. Tiga gambar diunduh atau dibuat. Citra azure-vote-front berisi aplikasi front-end dan menggunakan citra nginx-flask sebagai basis. Citra redis digunakan untuk memulai instans Redis.
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
mcr.microsoft.com/azuredocs/azure-vote-front v1 84b41c268ad9 9 seconds ago 944MB
mcr.microsoft.com/oss/bitnami/redis 6.0.8 3a54a920bb6c 2 days ago 103MB
tiangolo/uwsgi-nginx-flask python3.6 a16ce562e863 6 weeks ago 944MB
Jalankan perintah docker ps untuk melihat kontainer yang sedang berjalan:
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d10e5244f237 mcr.microsoft.com/azuredocs/azure-vote-front:v1 "/entrypoint.sh /sta…" 3 minutes ago Up 3 minutes 443/tcp, 0.0.0.0:8080->80/tcp azure-vote-front
21574cb38c1f mcr.microsoft.com/oss/bitnami/redis:6.0.8 "/opt/bitnami/script…" 3 minutes ago Up 3 minutes 0.0.0.0:6379->6379/tcp azure-vote-back
Menguji aplikasi secara lokal
Untuk melihat aplikasi yang sedang berjalan, masukkan http://localhost:8080
di browser web lokal. Aplikasi sampel dimuat, seperti yang ditunjukkan dalam contoh berikut:
Membersihkan sumber daya
Sekarang setelah fungsionalitas aplikasi divalidasi, kontainer yang sedang berjalan dapat dihentikan dan dihapus. Jangan hapus gambar kontainer - dalam tutorial berikutnya, gambar azure-vote-front diunggah ke instans Azure Container Registry.
Hentikan dan hapus instans kontainer dan sumber daya dengan perintah docker-compose down:
docker-compose down
Saat Anda menghapus aplikasi lokal, Anda memiliki gambar Docker yang berisi aplikasi Azure Vote, azure-vote-front, untuk digunakan dengan tutorial berikutnya.
Langkah berikutnya
Dalam tutorial ini, aplikasi diuji dan citra kontainer dibuat untuk aplikasi. Anda mempelajari cara untuk:
- Mengkloning sumber daya aplikasi sampel dari GitHub
- Membuat citra kontainer dari sumber daya aplikasi sampel
- Menguji aplikasi multi-kontainer di lingkungan Docker lokal
Lanjutkan ke tutorial berikutnya untuk mempelajari cara menyimpan citra kontainer di Azure Container Registry.
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk