Compute Nest memungkinkan Anda mengimpor repositori dari GitHub, Gitee, GitLab publik, dan Apsara DevOps CodeUp ke Compute Nest untuk membuat layanan. Fitur ini membantu pengembang dan vendor perangkat lunak independen (ISV) yang terdaftar di Compute Nest secara signifikan mengurangi kompleksitas pembuatan layanan dan dengan cepat membuat layanan. Pengembang kemudian dapat menguji, memperbarui, serta menerbitkan layanan tersebut ke Alibaba Cloud Marketplace. Topik ini menjelaskan cara membuat layanan dengan menggunakan repositori Git.
Prasyarat
Repositori Git yang ingin digunakan telah dibuat.
Ikhtisar
Anda dapat menggunakan repositori Git untuk dengan cepat membuat layanan Compute Nest. Untuk membuat layanan, Anda hanya perlu memberikan Compute Nest izin untuk mengakses repositori Git, mengimpor repositori Git ke Compute Nest, dan melakukan konfigurasi dasar. Berikut adalah skenario dan konfigurasi yang didukung:
Platform hosting kode yang didukung meliputi GitHub, Gitee, GitLab publik, dan Apsara DevOps CodeUp. Anda dapat memberikan Compute Nest izin untuk mengakses platform yang sesuai dan menarik repositori yang diperlukan dari platform tersebut.
Berbagai skenario penyebaran didukung.
Layanan Pribadi dan Layanan Dikelola skenario
Tipe Layanan
Definisi
Deskripsi
Layanan pribadi
Perangkat lunak dan sumber daya ditempatkan dalam akun pelanggan.
Layanan pribadi cocok untuk men-deploy aplikasi Platform sebagai Layanan (PaaS) dan perangkat lunak sebagai layanan (SaaS) di virtual private cloud (VPC) dalam akun pelanggan.
Layanan dikelola sepenuhnya
Perangkat lunak dan sumber daya ditempatkan dalam akun penyedia layanan.
Layanan dikelola sepenuhnya cocok untuk men-deploy aplikasi PaaS dan SaaS di VPC dalam akun penyedia layanan. Penyedia layanan memiliki izin penuh untuk mengelola sumber daya cloud dan aplikasi pelanggan. Compute Nest memungkinkan Anda menggunakan sumber daya eksklusif dalam layanan berikut: layanan dikelola sepenuhnya tenant tunggal dan layanan dikelola sepenuhnya yang diterapkan di kluster Container Service for Kubernetes (ACK) multi-tenant. Dalam layanan dikelola sepenuhnya tenant tunggal, sumber daya bersifat eksklusif untuk setiap pelanggan. Dalam layanan dikelola sepenuhnya yang diterapkan di kluster ACK multi-tenant, sumber daya bersifat eksklusif untuk setiap pod.
Berbagai waktu proses aplikasi dan tipe penyebaran
Waktu proses aplikasi
Tipe penyebaran
Parameter
Deskripsi
Kontainer
Docker Compose
Path File Docker-Compose Yaml
Path file Docker Compose dalam repositori tertentu
Path File ENV Docker-Compose
Path file .env dalam Docker Compose di repositori tertentu. Jika repositori tidak memiliki file .env, file .env default akan digunakan.
Parameter Penyebaran Kustom
Variabel lingkungan kustom, yang ditentukan secara dinamis selama penyebaran aktual. Sebagai contoh, jika variabel
Passworddisetel ke test dalam file .env.Anda dapat menentukan kata sandi kustom untuk menggantikan nilai default dalam file .env saat Anda men-deploy layanan.
Dockerfile
Path Dockerfile
Path file Dockerfile dalam repositori tertentu.
Parameter Penyebaran Kustom
Kunci variabel lingkungan waktu proses Docker. Sebagai contoh, dalam perintah docker run -e key=value, parameter value menentukan nilai sebenarnya yang Anda masukkan selama penyebaran.
Opsi Lanjutan: Parameter Pembuatan Gambar Docker
Parameter yang digunakan untuk membangun gambar Docker. Parameter ini cocok untuk skenario di mana fitur multi-stage diaktifkan untuk Dockerfile dan variabel lingkungan harus ditentukan sebelum Anda dapat membangun gambar.
Parameter Penyebaran Kustom
Kunci variabel lingkungan waktu proses Docker. Sebagai contoh, dalam perintah docker run -e key=value, parameter value menentukan nilai sebenarnya yang Anda masukkan selama penyebaran.
Port Layanan
Port layanan. Setelah layanan diterapkan, layanan dapat diakses melalui <Alamat IP>:<Port>.
Port Masuk Grup Keamanan
Port masuk grup keamanan yang ingin Anda akses berdasarkan skenario bisnis Anda.
Kluster Kubernetes
Helm Chart
Direktori Chart
Direktori tempat Helm chart berada. Anda dapat memilih direktori chart dalam repositori saat Anda membuat layanan.
Nilai Chart
Parameter ini digunakan untuk mengonfigurasi variabel kustom untuk Helm chart. Setelah Anda menentukan direktori chart, nilai parameter Helm chart kustom akan menimpa nilai default.
Tipe Konten Keluaran
Tipe konten keluaran, termasuk konten dalam dokumen yang menyertai Helm chart atau konten kustom yang ditampilkan dengan menjalankan perintah.
Linux Shell
SourceCode
Direktori Root
Direktori root dari kode sumber atau aplikasi sumber. Perintah dijalankan di direktori root.
Parameter Penyebaran Kustom
Nama parameter yang dilewatkan secara dinamis dalam perintah atau skrip. Ganti nama parameter dengan nama parameter sebenarnya saat Anda men-deploy layanan.
Perintah
Perintah yang dijalankan saat aplikasi dimulai.
Gambar Dasar
Gambar dasar. Anda dapat memilih gambar dasar CentOS 7.9, Node.js 20, atau Docker 26.
Port Layanan
Port dari aplikasi yang ingin Anda deploy dapat diakses.
Port Masuk Grup Keamanan
Port masuk yang didefinisikan dalam grup keamanan.
Periode Timeout
Periode timeout untuk eksekusi perintah. Ini mencegah pemborosan sumber daya yang terjadi ketika perintah tidak dijalankan untuk periode waktu yang lama.
Gambar Elastic Compute Service (ECS) dapat dikelola dan dibangun. Kegagalan menarik gambar Docker dapat terjadi karena berbagai alasan di daratan Tiongkok. Untuk mencegah kegagalan tersebut, Compute Nest menarik gambar Docker di repositori ke instance ECS melalui jaringan transmisi Alibaba Cloud dan membangun gambar ECS berdasarkan gambar Docker. Gambar Docker dikelola oleh Compute Nest dan dibagikan dengan akun Alibaba Cloud Anda.
Layanan dapat diperbarui menggunakan repositori kode. Saat commit baru dibuat di repositori, Compute Nest secara otomatis menarik repositori terbaru untuk memperbarui layanan terkait.
Prosedur
Masuk ke Compute Nest console.
Di panel navigasi sebelah kiri, klik My Services. Di tab Created Services halaman Layanan Saya, klik Create Service.
Di halaman Create Service, konfigurasikan informasi layanan.
Pilih metode pembuatan layanan dan konfigurasikan informasi repositori.
Parameter
Deskripsi
Pilih Metode Pembuatan Layanan
Pilih Quick Launch (From Repository).
Pengguna/Organisasi Repositori
Jika pelanggan Anda termasuk dalam repositori organisasi, Anda dapat memilih repositori pribadi atau repositori organisasi.
Nama Repositori
Nama repositori ke mana Anda ingin mengimpor layanan Anda.
Cabang Repositori
Cabang repositori.
Setelah Anda menentukan cabang repositori, Compute Nest secara otomatis mendeteksi file deskripsi sumber daya di cabang repositori. Anda hanya dapat melanjutkan ke langkah berikutnya jika file deskripsi sumber daya terdeteksi.
Setelah memilih repositori, halaman Konfigurasi Informasi Dasar akan muncul. Anda dapat memilih konfigurasi spesifik berdasarkan kebutuhan bisnis Anda.
Dalam contoh ini, aplikasi LobeChat diterapkan dengan cara self-hosting menggunakan Docker Compose. Anda dapat memilih parameter yang sesuai. Di bagian
Parameter Penyebaran Kustom, Anda mengonfigurasi variabel lingkungan kustom dalam file Docker Compose .env yang ditentukan. Parameter kustom dapat diisi secara dinamis selama penyebaran instance. Klik Next: Basic Information Configuration.Konfigurasikan informasi dasar tentang layanan.
Item
Deskripsi
Ikon Layanan
Ikon layanan. Format JPG dan PNG didukung. Kami merekomendasikan Anda mengunggah gambar dengan resolusi 192 × 192 piksel untuk kejelasan optimal.
Nama Layanan
Nama layanan. Nama dapat berisi 3 hingga 200 karakter, dan dapat mencakup digit, huruf, dan garis bawah (_).
Sistem menghasilkan nama default untuk layanan Anda berdasarkan informasi repositori Anda. Anda dapat menggunakan nama default atau menyesuaikan nama.
Deskripsi Layanan
Deskripsi layanan. Deskripsi dapat berisi 10 hingga 500 karakter.
Deskripsi Versi
Deskripsi versi layanan. Deskripsi versi harus berisi 1 hingga 200 karakter. Kami merekomendasikan Anda menambahkan informasi tentang versi perangkat lunak ke deskripsi ini. Deskripsi setiap versi harus unik dalam layanan.
Dokumentasi Perjanjian Layanan
Nama dokumen perjanjian layanan dan URL dokumen yang didefinisikan oleh penyedia layanan.
Klik Create Service. Di pesan yang muncul, klik OK. Setelah layanan dibuat dan dikirimkan, Anda dapat mengklik Go to List.
Di halaman My Services, layanan berada dalam status Creating. Anda dapat mengklik
Lihat Logdan menunggu hingga layanan dibuat. Jika operasi gagal, log kesalahan dilaporkan. Anda dapat memodifikasi repositori dan parameter berdasarkan isi log. Jika BuildService Success muncul di log, layanan telah berhasil dibuat.Setelah menyegarkan halaman Layanan Saya, layanan berada dalam status Menunggu Pre-release.
Apa yang harus dilakukan selanjutnya
Perbarui layanan.
Untuk memperbarui layanan, klik
Ubah Versidi kartu layanan. Di kotak dialog Ubah Versi, pilihPerbarui di KonsolatauPerbarui dengan Menyinkronkan Repositoridan kemudian klik OK. Jika Anda memilih Perbarui dengan Menyinkronkan Repositori, Compute Nest menarik repositori layanan lagi dari latar belakang dan membangun layanan berdasarkan file di repositori saat ini.Uji layanan.
Setelah menyimpan layanan, Anda dapat menguji layanan. Anda juga dapat melakukan pre-release layanan dan kemudian membagikan layanan dengan pengguna tertentu untuk menguji layanan. Untuk informasi lebih lanjut, lihat Uji layanan.
Terbitkan layanan.
Setelah layanan lulus uji, kirimkan layanan untuk ditinjau. Setelah tinjauan selesai, terbitkan layanan. Untuk informasi lebih lanjut, lihat Terbitkan layanan.