Memulai dengan aplikasi tanpa server - AWS Toolkit for VS Code

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Memulai dengan aplikasi tanpa server

Bagian berikut menjelaskan cara memulai membuat AWS Serverless Application dariAWS Toolkit for Visual Studio Code, menggunakan AWS Serverless Application Model (AWS SAM) dan AWS CloudFormation tumpukan.

Prasyarat

Sebelum Anda dapat membuat atau bekerja denganAWS Serverless Application, prasyarat berikut harus diselesaikan.

catatan

Operasi berikut mungkin mengharuskan Anda untuk keluar atau memulai ulang VS Code sebelum perubahan selesai.

  • Instal antarmuka baris AWS SAM perintah (CLI). Untuk informasi dan petunjuk tambahan tentang cara menginstal AWS SAM CLI, lihat topik Memasang AWS SAM CLI di Panduan Pengguna ini. AWS Serverless Application Model

  • Dari file AWS konfigurasi Anda, identifikasi AWS Region default Anda. Untuk informasi selengkapnya tentang file konfigurasi Anda, lihat topik pengaturan file konfigurasi dan kredensi di AWS Command Line InterfacePanduan Pengguna.

  • Instal SDK bahasa Anda dan konfigurasikan rantai alat Anda. Untuk informasi tambahan tentang cara mengkonfigurasi toolchain Anda dari AWS Toolkit for Visual Studio Code lihat topik konfigurasi toolchain Anda di Panduan Pengguna ini.

  • Instal ekstensi dukungan bahasa YAMB dari pasar VS Code. Ini diperlukan agar CodeLens fitur file AWS SAM template dapat diakses. Untuk informasi tambahan tentang CodeLens, lihat CodeLensbagian dalam dokumentasi VS Code

Izin IAM untuk aplikasi tanpa server

Dalam Toolkit for VS Code Anda harus memiliki profil kredensional yang berisi AWS Identity and Access Management izin (IAM) yang diperlukan untuk menyebarkan dan menjalankan aplikasi tanpa server. Anda harus memiliki akses baca/tulis yang sesuai ke layanan berikut:AWS CloudFormation, IAM, Lambda, Amazon API Gateway, Amazon Simple Storage Service (Amazon S3), dan Amazon Elastic Container Registry (Amazon ECR).

Untuk informasi tambahan tentang menyiapkan autentikasi yang diperlukan untuk menyebarkan dan menjalankan aplikasi tanpa server, lihat Mengelola akses dan izin sumber daya di Panduan Pengembang. AWS Serverless Application Model Untuk informasi tentang cara mengatur kredensil Anda, lihat Kredensial AWS IAM di Panduan Pengguna ini.

Membuat aplikasi tanpa server baru (lokal)

Prosedur ini menunjukkan cara membuat aplikasi tanpa server dengan Toolkit for VS Code dengan menggunakan. AWS SAM Output dari prosedur ini adalah direktori lokal di host pengembangan Anda yang berisi contoh aplikasi tanpa server, yang dapat Anda buat, uji, modifikasi, dan terapkan secara lokal ke Cloud. AWS

  1. Untuk membuka Command Palette, pilih View, Command Palette, dan kemudian enter AWS.

  2. Pilih AWSToolkit Buat Aplikasi Lambda SAM.

    Kotak dialog palet perintah.
    catatan

    Jika AWS SAM CLI tidak diinstal, Anda mendapatkan kesalahan di sudut kanan bawah editor VS Code. Jika ini terjadi, verifikasi bahwa Anda telah memenuhi semua asumsi dan prasyarat.

  3. Pilih runtime untuk AWS SAM aplikasi Anda.

    catatan

    Jika Anda memilih salah satu runtime dengan “(Image)”, aplikasi Anda adalah tipe paket Image. Jika Anda memilih salah satu runtime tanpa “(Image)”, aplikasi Anda adalah tipe Zip. Untuk informasi selengkapnya tentang perbedaan antara jenis paket Image dan Zip, lihat paket deployment Lambda dalam Panduan Developer AWS Lambda.

  4. Bergantung pada runtime yang Anda pilih, Anda mungkin diminta untuk memilih manajer ketergantungan dan arsitektur runtime untuk aplikasi SAM Anda.

    Dependency Manager

    Pilih antara Gradle atau Maven.

    catatan

    Pilihan alat otomatisasi build ini hanya tersedia untuk runtime Java.

    Architecture

    Pilih antara x86_64 atau arm64.

    Opsi untuk menjalankan aplikasi tanpa server Anda di lingkungan emulasi berbasis ARM64 alih-alih lingkungan berbasis x86_64 default tersedia untuk runtime berikut:

    • nodejs12.x (ZIP dan gambar)

    • nodejs14.x (ZIP dan gambar)

    • python3.8 (ZIP dan gambar)

    • python3.9 (ZIP dan gambar)

    • python3.10 (ZIP dan gambar)

    • python3.11 (ZIP dan gambar)

    • python3.12 (ZIP dan gambar)

    • java8.al2 dengan Gradle (ZIP dan gambar)

    • java8.al2 dengan Maven (hanya ZIP)

    • java11 dengan Gradle (ZIP dan gambar)

    • java11 dengan Maven (hanya ZIP)

    penting

    Anda harus menginstal AWS CLI versi 1.33.0 atau yang lebih baru untuk memungkinkan aplikasi berjalan di lingkungan berbasis ARM64. Untuk informasi selengkapnya, lihat Prasyarat.

  5. Pilih lokasi untuk proyek baru Anda. Anda dapat menggunakan folder ruang kerja yang ada jika ada yang terbuka, Pilih folder lain yang sudah ada, atau buat folder baru dan pilih. Untuk contoh ini, pilih Tidak ada folder ruang kerja yang terbuka untuk membuat folder bernamaMY-SAM-APP.

  6. Masukkan nama untuk proyek baru Anda. Untuk contoh ini, gunakan my-sam-app-nodejs. Setelah Anda menekan Enter, Toolkit for VS Code membutuhkan beberapa saat untuk membuat proyek.

Ketika proyek dibuat, aplikasi Anda ditambahkan ke ruang kerja Anda saat ini. Anda akan melihatnya tercantum di jendela Explorer.

Membuka aplikasi tanpa server (lokal)

Untuk membuka aplikasi tanpa server di host pengembangan lokal Anda, buka folder yang berisi file template aplikasi.

  1. Dari File, pilih Open Folder... .

  2. Di kotak dialog Open Folder, arahkan ke folder aplikasi tanpa server yang ingin Anda buka.

  3. Pilih tombol Pilih Folder.

Ketika Anda membuka folder aplikasi, itu ditambahkan ke jendela Explorer.

Menjalankan dan men-debug aplikasi tanpa server dari template (lokal)

Anda dapat menggunakan Toolkit for VS Code untuk mengonfigurasi cara men-debug aplikasi tanpa server dan menjalankannya secara lokal di lingkungan pengembangan Anda.

Anda mulai mengonfigurasi perilaku debug dengan menggunakan CodeLensfitur Kode VS untuk mengidentifikasi fungsi Lambda yang memenuhi syarat. CodeLens memungkinkan interaksi sadar konten dengan kode sumber Anda. Untuk informasi tentang memastikan bahwa Anda dapat mengakses CodeLens fitur, tinjau Prasyarat bagian dari sebelumnya dalam topik ini.

catatan

Dalam contoh ini, Anda men-debug aplikasi yang menggunakan JavaScript. Namun, Anda dapat menggunakan fitur debugging Toolkit for VS Code dengan bahasa dan runtime berikut:

  • C # — .NET Inti 2.1, 3.1; .NET 5.0

  • JavaScript/TypeScript — Node.js 12. x, 14. x

  • Python - 3.6, 3.7, 3.8, 3.9, 3.10, 3.11, 3.12

  • Jawa — 8, 8.al2, 11

  • Pergi - 1.x

Pilihan bahasa Anda juga memengaruhi cara CodeLens mendeteksi penangan Lambda yang memenuhi syarat. Untuk informasi selengkapnya, lihat Menjalankan dan men-debug fungsi Lambda langsung dari kode.

Dalam prosedur ini, Anda menggunakan contoh aplikasi yang dibuat di Membuat aplikasi tanpa server baru (lokal) bagian sebelumnya dalam topik ini.

  1. Untuk melihat file aplikasi Anda di File Explorer VS Code, pilih View, Explorer.

  2. Dari folder aplikasi (misalnya, my-sample-app), buka template.yaml file.

    catatan

    Jika Anda menggunakan templat dengan nama yang berbedatemplate.yaml, CodeLens indikator tidak tersedia secara otomatis di file YAMAL. Ini berarti Anda harus menambahkan konfigurasi debug secara manual.

  3. Di editor untuktemplate.yaml, buka Resources bagian template yang mendefinisikan sumber daya tanpa server. Dalam hal ini, ini adalah HelloWorldFunction sumber daya tipeAWS::Serverless::Function.

    Dalam CodeLens indikator untuk sumber daya ini, pilih Tambahkan Konfigurasi Debug.

    Menggunakan CodeLens indikator dalam template.yaml file untuk menambahkan konfigurasi debug.
  4. Di Command Palette, pilih runtime di mana AWS SAM aplikasi Anda akan berjalan.

  5. Di editor untuk file launch.json, edit atau konfirmasi nilai untuk properti konfigurasi berikut:

    • "name" – Masukkan nama yang mudah dibaca untuk muncul di bidang tarik-turun Konfigurasi di tampilan Jalankan.

    • "target"— Pastikan nilainya "template" sedemikian rupa sehingga AWS SAM template adalah titik masuk untuk sesi debug.

    • "templatePath" – Masukkan jalur relatif atau absolut untuk file template.yaml.

    • "logicalId"— Pastikan bahwa nama cocok dengan yang ditentukan di bagian Sumber daya AWS SAM template. Dalam hal ini, ini adalah HelloWorldFunction dari tipe AWS::Serverless::Function.

    Mengkonfigurasi launch.json file untuk debugging berbasis template.

    Untuk informasi selengkapnya tentang entri ini dan entri lainnya dalam file launch.json, lihat Opsi konfigurasi untuk men-debug aplikasi nirserver.

  6. Jika Anda puas dengan konfigurasi debug Anda, simpan launch.json. Kemudian, untuk memulai debugging, pilih tombol “putar” hijau di tampilan RUN.

    Ketika sesi debug dimulai, panel KONSOL DEBUG menampilkan output debug dan menampilkan nilai apa pun yang dikembalikan oleh fungsi Lambda. (Saat men-debug AWS SAM aplikasi, AWSToolkit dipilih sebagai saluran Output di panel Output.)

Menyinkronkan aplikasi AWS SAM

AWS Toolkit for Visual Studio CodeMenjalankan perintah AWS SAM CLI sam sync untuk menyebarkan aplikasi tanpa server Anda ke file. AWS Cloud Untuk informasi tambahan tentang AWS SAM sinkronisasi, lihat topik referensi perintah AWS SAM CLI di Panduan Pengembang AWS Serverless Application Model

Prosedur berikut menjelaskan cara menerapkan aplikasi tanpa server Anda ke AWS Cloud with sam sync dari Toolkit for VS Code.

  1. Dari menu utama di VS Code, buka Command Palette dengan memperluas View dan memilih Command Palette.

  2. Dari Command Palette cari AWSdan pilih Sync SAM Application untuk mulai mengatur sinkronisasi Anda.

    Perintah untuk menyinkronkan aplikasi tanpa server.
  3. Pilih AWS Wilayah untuk menyinkronkan aplikasi tanpa server Anda.

  4. Pilih file template.yaml yang akan digunakan untuk deployment.

  5. Pilih bucket Amazon S3 yang sudah ada atau masukkan nama bucket Amazon S3 baru untuk menerapkan aplikasi Anda.

    penting

    Bucket Amazon S3 Anda harus memenuhi persyaratan berikut:

    • Bucket harus berada di Wilayah yang Anda sinkronkan.

    • Nama bucket Amazon S3 harus unik secara global di semua nama bucket yang ada di Amazon S3.

  6. Jika aplikasi nirserver Anda menyertakan fungsi dengan tipe paket Image, masukkan nama repositori Amazon ECR yang dapat digunakan oleh deployment ini. Repositori harus berada di Wilayah tempat Anda men-deploy.

  7. Pilih tumpukan penerapan dari daftar penerapan sebelumnya, atau buat tumpukan penerapan baru dengan memasukkan nama tumpukan baru. Kemudian, lanjutkan untuk memulai proses sinkronisasi.

    catatan

    Tumpukan yang digunakan dalam penerapan sebelumnya ditarik kembali per ruang kerja dan wilayah.

  8. Selama proses sinkronisasi, status penerapan Anda ditangkap di tab Terminal VS Code. Verifikasi bahwa sinkronisasi Anda berhasil dari tab terminal, jika terjadi kesalahan, Anda menerima pemberitahuan.

    Muncul kesalahan saat menerapkan aplikasi tanpa server.
    catatan

    Untuk detail tambahan tentang sinkronisasi Anda, AWS Toolkit for Visual Studio Code log dapat diakses dari Command Palette.

    Untuk mengakses AWS Toolkit for Visual Studio Code log Anda dari Command Palette, perluas View, pilih Command PaletteAWS: View AWS Toolkits Logs, lalu cari, dan pilih ketika terisi dalam daftar.

Ketika penerapan selesai, Anda melihat aplikasi Anda terdaftar di AWSExplorer. Untuk informasi selengkapnya tentang cara menjalankan fungsi Lambda yang dibuat sebagai bagian dari aplikasi, lihat topik Berinteraksi dengan Fungsi Lambda Jarak Jauh di Panduan Pengguna ini.

Menghapus aplikasi tanpa server dari AWS Cloud

Menghapus aplikasi nirserver melibatkan penghapusan tumpukan AWS CloudFormation yang sebelumnya Anda deploy ke AWS Cloud. Perhatikan bahwa prosedur ini tidak menghapus direktori aplikasi Anda dari host lokal Anda.

  1. Buka AWS Penjelajah.

  2. Di jendela AWSToolkit Explorer, perluas Wilayah yang berisi aplikasi yang digunakan yang ingin Anda hapus, lalu perluas. AWS CloudFormation

  3. Buka menu konteks (klik kanan) untuk nama AWS CloudFormation tumpukan yang sesuai dengan aplikasi tanpa server yang ingin Anda hapus, lalu pilih Hapus Tumpukan. AWS CloudFormation

  4. Untuk mengonfirmasi bahwa Anda ingin menghapus tumpukan yang dipilih, pilih Ya.

Jika penghapusan tumpukan berhasil, Toolkit for VS Code menghapus nama tumpukan dari daftar di Explorer. AWS CloudFormation AWS