Hook platform - AWS Elastic Beanstalk

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

Hook platform

Hook platform dirancang khusus untuk memperluas platform lingkungan Anda. Ini adalah skrip kustom dan file eksekusi lainnya yang Anda men-deploy sebagai bagian dari kode sumber aplikasi Anda, dan Elastic Beanstalk berjalan selama berbagai tahap penyediaan instans.

catatan

Kait platform tidak didukung pada versi AMI platform Amazon Linux (sebelum Amazon Linux 2).

Hook platform deployment aplikasi

Deployment aplikasi terjadi ketika Anda menyediakan paket sumber baru untuk deployment, atau ketika Anda membuat perubahan konfigurasi yang memerlukan penghentian dan rekreasi semua instans lingkungan.

Untuk menyediakan platform hook yang berjalan selama deployment aplikasi, menempatkan file di bawah direktori .platform/hooks di paket sumber Anda, di salah satu subdirektori berikut.

  • prebuild – File di sini berjalan setelah platform mesin Elastic Beanstalk mengunggah dan mengekstrak paket sumber aplikasi, dan sebelum menyiapkan dan mengonfigurasi aplikasi dan server web.

    File prebuild berjalan setelah menjalankan perintah yang ditemukan di bagian perintah dari setiap file konfigurasi dan sebelum menjalankan perintah Buildfile.

  • predeploy – File di sini berjalan setelah mesin platform Elastic Beanstalk mengatur dan mengonfigurasi aplikasi dan server web, dan sebelum men-deploy mereka ke lokasi waktu aktif akhir mereka.

    File predeploy berjalan setelah menjalankan perintah yang ditemukan di bagian container_commands dari setiap file konfigurasi dan sebelum menjalankan perintah Procfile.

  • postdeploy – File di sini berjalan setelah mesin platform Elastic Beanstalk men-deploy aplikasi dan server proksi.

    Ini adalah langkah alur kerja deployment terakhir.

Hook platform deployment konfigurasi

Deployment konfigurasi terjadi ketika Anda membuat perubahan konfigurasi yang hanya memperbarui instans lingkungan tanpa menciptakan mereka. Pembaharuan pilihan berikut ini menyebabkan pembaruan konfigurasi.

Untuk menyediakan hook yang berjalan selama deployment konfigurasi, menempatkan mereka di bawah direktori .platform/confighooks dalam paket sumber Anda. Tiga subdirektori yang sama seperti untuk aplikasi deployment hook berlaku.

Selengkapnya tentang hook platform

File hook dapat berupa file biner, atau berkas skrip yang dimulai dengan baris #! yang berisi jalur penerjemah mereka, seperti #!/bin/bash. Semua file harus memiliki izin eksekusi. Gunakan chmod +x untuk mengatur izin eksekusi pada file hook Anda. Untuk semua versi platform berbasis Amazon Linux 2023 dan Amazon Linux 2 yang dirilis pada atau setelah 29 April 2022, Elastic Beanstalk secara otomatis memberikan izin eksekusi ke semua skrip kait platform. Dalam hal ini Anda tidak perlu memberikan izin eksekusi secara manual. Untuk daftar versi platform ini, lihat catatan rilis Linux 29 April 2022 di AWS Elastic Beanstalk Panduan Catatan Rilis.

Elastic Beanstalk menjalankan file di masing-masing direktori ini dalam urutan leksikografis nama file. Semua file berjalan sebagai pengguna root. Direktori kerja saat ini (cwd) untuk hook platform adalah direktori root aplikasi. Untuk file prebuild dan predeploy itu adalah direktori pementasan aplikasi, dan untuk file postdeploy itu adalah direktori aplikasi saat ini. Jika salah satu file gagal (keluar dengan kode keluar non-nol), deployment dibatalkan dan gagal.

Skrip teks kait platform mungkin gagal jika berisi karakter pemisah baris Windows Carriage Return /Line Feed (CRLF). Jika file disimpan di host Windows, kemudian ditransfer ke server Linux, itu mungkin berisi jeda CRLF baris Windows. Untuk platform yang dirilis pada atau setelah 29 Desember 2022, Elastic Beanstalk secara otomatis CRLF mengonversi karakter Windows menjadi karakter pemutus baris Linux Line Feed (LF) dalam file teks kait platform. Jika aplikasi Anda berjalan pada platform Amazon Linux 2 yang dirilis sebelum tanggal ini, Anda harus mengonversi CRLF karakter Windows ke karakter LF Linux. Salah satu cara untuk mencapai ini adalah dengan membuat dan menyimpan file skrip pada host Linux. Alat yang mengonversi karakter ini juga tersedia di internet.

File hook memiliki akses ke semua properti lingkungan yang telah Anda tetapkan dalam opsi aplikasi, dan variabel lingkungan sistem HOME, PATH, dan PORT.

Untuk mendapatkan nilai variabel lingkungan dan opsi konfigurasi lainnya ke skrip kait platform Anda, Anda dapat menggunakan utilitas get-config yang Elastic Beanstalk sediakan dalam instans lingkungan. Untuk rincian selengkapnya, lihat Alat skrip platform untuk lingkungan Elastic Beanstalk Anda.