Contoh lengkap ini menjelaskan cara membuat deployment dengan mesin virtual yang menggunakan image yang dioptimalkan untuk container. Untuk mengetahui informasi selengkapnya tentang penggunaan container dengan Compute Engine, lihat Image Compute Engine yang Dioptimalkan untuk Container.
Panduan ini menjelaskan cara:
- Buat manifes container sederhana.
- Buat konfigurasi dan template yang menggunakan image container.
- Deploy resource Anda dan verifikasi bahwa deployment berhasil.
Membuat manifes container
Untuk menggunakan container, Anda harus menentukan manifes container. Manifes menjelaskan properti seperti image container, container yang akan diluncurkan, perintah yang akan dieksekusi saat booting, dan port yang akan diaktifkan.
Buat file bernama container_manifest.yaml
dengan konten berikut:
Manifes ini membuat container bernama simple-echo yang menggunakan image container Hello Application dan meluncurkan server echo yang memantau port 8080.
Membuat template dan konfigurasi
Selanjutnya, buat template yang meluncurkan instance virtual machine dengan
image yang dioptimalkan untuk container. Buat file bernama container_vm.[jinja|py]
dengan
konten berikut:
Jinja
Python
Buat file skema yang sesuai, yang menerapkan struktur template:
Jinja
Python
Perhatikan bahwa ada sejumlah parameter yang ditentukan dalam template ini, termasuk:
- Variabel lingkungan
deployment
,name
, danproject
. Deployment Manager otomatis mengisi variabel tersebut tanpa tindakan tambahan dari Anda. - Properti
zone
,containerImage
, dancontainerManifest
, yang akan ditentukan dalam konfigurasi.
Buat file konfigurasi bernama container_vm.yaml
yang
terlihat seperti berikut:
Jinja
Python
Pastikan Anda mengganti ZONE_TO_RUN
dengan zona yang diinginkan untuk
mesin virtual Anda. Perhatikan bahwa file tersebut juga telah menentukan image container yang akan digunakan dan
manifest container yang Anda buat sebelumnya.
Men-deploy instance virtual machine Anda
Terakhir, deploy instance mesin virtual Anda menggunakan Google Cloud CLI:
gcloud deployment-manager deployments create my-container-deployment \
--config container_vm.yaml
Setelah deployment dibuat, Anda dapat melihat detail deployment. Contoh:
$ gcloud deployment-manager deployments describe my-container-deployment
creationTimestamp: '2015-04-02T12:24:31.645-07:00'
fingerprint: ''
id: '8602410885927938432'
manifest: https://www.googleapis.com/deploymentmanager/v2/projects/myproject/global/deployments/my-container-deployment/manifests/manifest-1428002671645
name: my-container-deployment
state: DEPLOYED
resources:
NAME TYPE ID UPDATE_STATE ERRORS
my-container-deployment-my-container-vm compute.v1.instance 3775082612632070557 COMPLETED -
Memastikan instance Anda berjalan
Untuk menguji apakah instance penampung Anda dimulai, buka alamat IP eksternal virtual machine di browser Anda, yang akan mencetak hello world
:
Tambahkan aturan firewall Compute Engine untuk mengizinkan Anda membuat kueri traffic di mesin virtual melalui port 8080:
gcloud compute firewall-rules create allow-8080 --allow tcp:8080
Dapatkan alamat IP eksternal instance Anda:
$ gcloud compute instances describe my-container-deployment-my-container-vm ... name: my-container-vm-my-container-deployment networkInterfaces: - accessConfigs: - kind: compute#accessConfig name: external-nat natIP: 104.197.8.138 type: ONE_TO_ONE_NAT name: nic0 network: https://www.googleapis.com/compute/v1/projects/myproject/global/networks/default networkIP: 10.240.97.220 scheduling: automaticRestart: true onHostMaintenance: MIGRATE selfLink: https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/my-container-deployment-my-container-vm status: RUNNING tags: fingerprint: 42WmSpB8rSM= zone: https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a ...
Dalam hal ini, IP eksternalnya adalah
104.197.8.138
.Di jendela browser, masukkan IP eksternal dan port 8080 di kolom browser. Misalnya,
104.197.8.138:8080
.Jika berhasil, Anda akan melihat pesan
hello world
.
(Opsional) Hapus deployment Anda
Jika Anda ingin menghemat biaya dan tidak lagi menginginkan atau memerlukan deployment, hapus deployment Anda.
gcloud deployment-manager deployments delete my-container-deployment
Langkah berikutnya
Pelajari lebih lanjut Deployment Manager di Panduan Pengguna Lengkap atau melalui API.
Coba beberapa tutorial lainnya: