Menyiapkan lingkungan pengembangan Python Anda untuk Elastic Beanstalk - AWS Elastic Beanstalk

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

Menyiapkan lingkungan pengembangan Python Anda untuk Elastic Beanstalk

Topik ini memberikan instruksi untuk menyiapkan lingkungan pengembangan Python untuk menguji aplikasi Anda secara lokal sebelum menerapkannya ke AWS Elastic Beanstalk. Ini juga merujuk situs web yang menyediakan instruksi instalasi untuk alat yang berguna.

Untuk langkah-langkah penyiapan umum dan alat yang berlaku untuk semua bahasa, lihat Mengkonfigurasi mesin pengembangan Anda untuk digunakan dengan Elastic Beanstalk.

Untuk mengikuti prosedur di panduan ini, Anda memerlukan terminal atau shell baris perintah untuk menjalankan perintah. Perintah ditampilkan dalam daftar yang diawali dengan simbol prompt ($) dan nama direktori saat ini, bila perlu.

~/eb-project$ this is a command this is output

Di Linux dan macOS, Anda dapat menggunakan shell dan manajer paket pilihan Anda. Pada Windows Anda dapat menginstal Windows Subsystem untuk Linux untuk mendapatkan versi Windows terintegrasi dari Ubuntu dan Bash.

Untuk langkah-langkah penyiapan umum dan alat yang berlaku untuk semua bahasa, lihat Mengkonfigurasi mesin pengembangan Anda untuk digunakan dengan Elastic Beanstalk.

Prasyarat

Daftar berikut memberikan prasyarat umum untuk bekerja dengan Elastic Beanstalk dan aplikasi Python Anda:

  • Bahasa Python - Instal versi bahasa Python yang disertakan pada versi platform Elastic Beanstalk Python pilihan Anda. Untuk daftar versi bahasa Python yang didukung, lihat Platform Python yang didukung di AWS Elastic Beanstalk Panduan platform. Jika Anda belum menyiapkan Python di mesin pengembangan Anda, lihat halaman unduhan Python di situs web Python.

  • piputilitaspip Utilitas adalah penginstal paket Python. Ini menginstal dan mencantumkan dependensi untuk proyek Anda, sehingga Elastic Beanstalk tahu cara mengatur lingkungan aplikasi Anda. Untuk informasi selengkapnyapip, lihat halaman pip di situs web pip.pypa.io.

  • (Opsional) Antarmuka Baris Perintah Elastic Beanstalk CLI (EB) - EB dapat mengemas aplikasi Anda CLI dengan file penyebaran yang diperlukan. Itu juga dapat membuat lingkungan Elastic Beanstalk dan menyebarkan aplikasi Anda ke sana. Anda juga dapat melakukan penerapan melalui konsol Elastic Beanstalk, sehingga EB tidak sepenuhnya diperlukan. CLI

  • SSHInstalasi yang berfungsi — Anda dapat terhubung ke instance yang sedang berjalan dengan SSH protokol untuk memeriksa atau men-debug penerapan.

  • virtualenvpaketvirtualenv Alat ini menciptakan lingkungan pengembangan dan pengujian untuk aplikasi Anda. Elastic Beanstalk dapat mereplikasi lingkungan ini tanpa menginstal paket tambahan yang tidak diperlukan oleh aplikasi Anda. Untuk informasi lebih lanjut, lihat situs web virtualenv. Setelah menginstal Python, Anda dapat menginstal virtualenv paket dengan perintah berikut:

    $ pip install virtualenv

Menggunakan lingkungan virtual

Setelah prasyarat telah diinstal, siapkan lingkungan virtual dengan virtualenv untuk menginstal dependensi aplikasi Anda. Dengan menggunakan lingkungan virtual, Anda dapat membedakan dengan tepat paket mana yang dibutuhkan oleh aplikasi Anda sehingga paket yang diperlukan diinstal pada EC2 instance yang menjalankan aplikasi Anda.

Untuk menyiapkan lingkungan virtual
  1. Buka jendela baris-perintah dan ketik:

    $ virtualenv /tmp/eb_python_app

    Ganti eb_python_app dengan nama yang masuk akal untuk aplikasi Anda (menggunakan nama aplikasi Anda adalah ide yang bagus). Perintah virtualenv membuat lingkungan virtual untuk Anda dalam direktori tertentu dan mencetak hasil dari tindakannya:

    Running virtualenv with interpreter /usr/bin/python New python executable in /tmp/eb_python_app/bin/python3.7 Also creating executable in /tmp/eb_python_app/bin/python Installing setuptools, pip...done.
  2. Setelah lingkungan virtual Anda siap, mulai dengan menjalankan skrip activate yang terletak di direktori bin lingkungan tersebut. Misalnya, untuk memulai lingkungan eb_python_app yang dibuat di langkah sebelumnya, Anda akan mengetik:

    $ source /tmp/eb_python_app/bin/activate

    Lingkungan virtual mencetak namanya (misalnya: (eb_python_app)) di awal setiap prompt perintah, mengingatkan bahwa Anda berada di lingkungan Python virtual.

  3. Untuk berhenti menggunakan lingkungan virtual Anda dan kembali ke juru bahasa Python default sistem dengan semua perpustakaan terinstal, jalankan perintah deactivate.

    (eb_python_app) $ deactivate
catatan

Setelah dibuat, Anda dapat menghidupkan ulang lingkungan virtual kapan pun itu dengan menjalankan skrip activate kembali.

Mengonfigurasi proyek Python pada Elastic Beanstalk

Anda dapat menggunakan Elastic Beanstalk untuk mempersiapkan aplikasi Python Anda untuk penyebaran dengan CLI Elastic Beanstalk.

Untuk mengonfigurasi aplikasi Python untuk deployment dengan menggunakan Elastic Beanstalk
  1. Dari dalam lingkungan virtual, kembali ke bagian atas direktori berstruktur pohon milik proyek (python_eb_app) Anda, dan ketik:

    pip freeze >requirements.txt

    Perintah ini menyalin nama dan versi paket yang diinstal di lingkungan virtual Anda kerequirements.txt, Misalnya, jika YAML paket Py, versi 3.11 diinstal di lingkungan virtual Anda, file akan berisi baris:

    PyYAML==3.11

    Hal ini mengizinkan Elastic Beanstalk meniru lingkungan Python aplikasi Anda menggunakan paket dan versi sama yang biasa mengembangkan dan menguji aplikasi Anda.

  2. Konfigurasikan CLI repositori EB dengan perintah. eb init Ikuti prompt untuk memilih wilayah, platform, dan opsi lainnya. Untuk detail petunjuk, lihat Mengelola beberapa lingkungan Elastic Beanstalk sebagai grup dengan EB CLI.

Secara default, Elastic Beanstalk mencari file bernama application.py untuk memulai aplikasi Anda. Jika ini tidak ada dalam proyek Python yang telah Anda buat, diperlukan beberapa penyesuaian lingkungan aplikasi Anda. Anda juga perlu mengatur variabel lingkungan sehingga modul aplikasi Anda dapat dimuat. Lihat Menggunakan platform Python Elastic Beanstalk untuk informasi selengkapnya.