Buildfile dan Procfile - AWS Elastic Beanstalk

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

Buildfile dan Procfile

Beberapa platform memungkinkan Anda untuk menyesuaikan bagaimana Anda membangun atau mempersiapkan aplikasi Anda, dan untuk menentukan proses yang menjalankan aplikasi Anda. Setiap topik platform individu secara khusus menyebutkan Buildfile dan/atau Procfile jika platform mendukung mereka. Cari platform spesifik Anda di bawah Platform Elastic Beanstalk.

Untuk semua platform pendukung, sintaks dan semantik identik, dan seperti yang dijelaskan pada halaman ini. Topik platform individu menyebutkan penggunaan spesifik file-file ini untuk membangun dan menjalankan aplikasi dalam bahasa masing-masing.

Buildfile

Untuk menentukan perintah kustom build dan konfigurasi untuk aplikasi Anda, menempatkan file yang bernama Buildfile di direktori root dari sumber aplikasi Anda. Nama file peka huruf besar/kecil. Gunakan sintaks berikut untuk Buildfile Anda.

<process_name>: <command>

Perintah di Buildfile Anda harus sesuai dengan ekspresi reguler berikut: ^[A-Za-z0-9_-]+:\s*[^\s].*$

Elastic Beanstalk tidak memantau aplikasi yang dijalankan dengan Buildfile. Gunakan Buildfile untuk perintah yang berjalan dalam waktu singkat dan berakhir setelah menyelesaikan tugas mereka. Untuk proses aplikasi yang berjalan lama yang seharusnya tidak keluar, gunakan Procfile.

Semua jalur di Buildfile adalah relatif terhadap akar dari paket sumber. Dalam contoh berikut Buildfile, build.sh adalah script shell yang terletak di akar paket sumber.

contoh Buildfile
make: ./build.sh

Jika Anda ingin memberikan langkah-langkah pembuatan kustom, kami sarankan Anda menggunakan hook platform predeploy untuk apa pun kecuali perintah yang paling sederhana, bukan Buildfile. Hook platform memungkinkan skrip yang lebih kaya dan penanganan kesalahan yang lebih baik. Hook platform dijelaskan di bagian selanjutnya.

Procfile

Untuk menentukan perintah kustom untuk memulai dan menjalankan aplikasi Anda, menempatkan file yang bernama Procfile di direktori root dari sumber aplikasi Anda. Nama file peka huruf besar/kecil. Gunakan sintaks berikut untuk Procfile Anda. Anda dapat menentukan satu atau lebih perintah.

<process_name1>: <command1> <process_name2>: <command2> ...

Setiap baris di Procfile harus sesuai dengan ekspresi reguler berikut: ^[A-Za-z0-9_-]+:\s*[^\s].*$

Menggunakan Procfile untuk proses aplikasi yang berjalan lama yang seharusnya tidak keluar. Elastic Beanstalk mengharapkan proses berjalan dari Procfile untuk berjalan terus menerus. Elastic Beanstalk memonitor proses ini dan memulai ulang setiap proses yang berakhir. Untuk proses berjalan pendek, gunakan Buildfile.

Semua jalur di Procfile adalah relatif terhadap akar dari paket sumber. Contoh berikut Procfile mendefinisikan tiga proses. Yang pertama, disebut web dalam contoh, adalah aplikasi web utama.

contoh Procfile
web: bin/myserver cache: bin/mycache foo: bin/fooapp

Elastic Beanstalk mengonfigurasi server proksi untuk meneruskan permintaan ke aplikasi web utama Anda pada port 5000, dan Anda dapat mengonfigurasi nomor port ini. Sebuah penggunaan umum untuk Procfile adalah untuk lulus nomor port ini untuk aplikasi Anda sebagai argumen perintah. Untuk detail tentang konfigurasi proxy, lihatKonfigurasi proksi terbalik.

Elastic Beanstalk menangkap output standar dan kesalahan aliran dari proses Procfile dalam berkas log. Elastic Beanstalk menamakan berkas log setelah proses dan menyimpannya di /var/log. Misalnya, proses web dalam contoh sebelumnya menghasilkan log bernama web-1.log dan web-1.error.log untuk stdout dan stderr, masing-masing.