Configurazione dell'ambiente di sviluppo Python - AWS Elastic Beanstalk

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Configurazione dell'ambiente di sviluppo Python

Configura un ambiente di sviluppo Python per testare l'applicazione in locale prima di implementarla in AWS Elastic Beanstalk. Questo argomento illustra fasi e collegamenti della configurazione di un ambiente di sviluppo alle pagine di installazione per strumenti utili.

Per seguire le procedure in questa guida, devi usare un terminale a riga di comando o una shell per eseguire i comandi. I comandi vengono visualizzati in elenchi preceduti da un simbolo di prompt ($) e dal nome della directory corrente, se appropriato.

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

Su Linux e macOS usa la tua shell e il tuo programma di gestione dei pacchetti preferiti. Su Windows puoi installare il sottosistema Windows per Linux per ottenere una versione integrata con Windows di Ubuntu e Bash.

Per fasi e strumenti di configurazione comuni che si applicano a tutti i linguaggi, consultare Configurazione del computer di sviluppo da utilizzare con Elastic Beanstalk.

Prerequisiti

Per tutte le applicazioni Python che distribuirai con Elastic Beanstalk, questi prerequisiti sono comuni:

  1. Una versione Python che corrisponde alla versione della piattaforma Python Elastic Beanstalk che verrà utilizzata dall'applicazione.

  2. La utility pip corrispondente alla versione di Python. Questa viene utilizzata per installare ed elencare le dipendenze del progetto, in modo che Elastic Beanstalk sappia come configurare l'ambiente dell'applicazione.

  3. L'interfaccia a riga di AWS Elastic Beanstalk comando (EB CLI). Questo viene utilizzato per inizializzare l'applicazione con i file necessari per la distribuzione con Elastic Beanstalk.

  4. Un'installazione ssh funzionante. Questa viene utilizzata per connetterti alle istanze in esecuzione quando è necessario esaminare o eseguire il debug di una distribuzione.

  5. Il pacchetto virtualenv. Questo viene utilizzato per creare un ambiente usato per sviluppare e testare l'applicazione, in modo che l'ambiente possa essere replicato da Elastic Beanstalk senza installare pacchetti aggiuntivi che non sono necessari per l'applicazione. Installa il pacchetto con il seguente comando:

    $ pip install virtualenv

Per istruzioni sull'installazione di Python, sul comando pip e sulla CLI EB, consulta Installa l'interfaccia a riga di comando EB.

Uso di un ambiente virtuale

Dopo aver installato i prerequisiti, imposta un ambiente virtuale con virtualenv per l'installazione delle dipendenze dell'applicazione. Utilizzando un ambiente virtuale, è possibile individuare esattamente quali pacchetti sono necessari per la tua applicazione, in modo che i pacchetti necessari vengano installati sulle istanze EC2 che eseguono l'applicazione.

Per configurare un ambiente virtuale
  1. Apri una finestra a riga di comando e digita:

    $ virtualenv /tmp/eb_python_app

    Sostituisci eb_python_app con un nome che puoi ricordare facilmente per la tua applicazione (utilizzare il nome dell'applicazione è una buona idea). Il comando virtualenv crea un ambiente virtuale per l'utente nella directory specificata e stampa i risultati delle operazioni:

    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. Quando l'ambiente virtuale è pronto, avvialo eseguendo lo script activate che si trova nella directory bin dell'ambiente. Ad esempio, per avviare l'ambiente eb_python_app creato nella fase precedente, digita:

    $ source /tmp/eb_python_app/bin/activate

    L'ambiente virtuale stamperà il proprio nome, (ad esempio: (eb_python_app)) all'inizio di ogni prompt dei comandi, per ricordarti che sei in un ambiente Python virtuale.

  3. Per interrompere l'utilizzo dell'ambiente virtuale e tornare all'interprete Python predefinito del sistema con tutte le relative librerie installate, eseguire il comando deactivate.

    (eb_python_app) $ deactivate
Nota

Una volta creato, è possibile riavviare l'ambiente virtuale in qualsiasi momento eseguendo di nuovo lo script activate.

Configurazione di un progetto Python per Elastic Beanstalk

È possibile utilizzare l'interfaccia a riga di comando di Elastic Beanstalk (CLI EB) per preparare le applicazioni Python alla distribuzione con Elastic Beanstalk.

Per configurare un'applicazione Python per la distribuzione con Elastic Beanstalk
  1. Dall'interno del tuo ambiente virtuale, torna alla parte superiore della struttura ad albero della directory del progetto (python_eb_app) e digita:

    pip freeze >requirements.txt

    Questo comando copia i nomi e le versioni dei pacchetti installati nell'ambiente virtuale su requirements.txt. Ad esempio, se il pacchetto PyYAML versione 3.11 è installato nell'ambiente virtuale, il file conterrà la riga:

    PyYAML==3.11

    Ciò consente a Elastic Beanstalk di replicare l'ambiente Python dell'applicazione utilizzando gli stessi pacchetti e le stesse versioni che hai utilizzato per sviluppare e testare l'applicazione.

  2. Configura il repository della CLI EB con il comando eb init. Segui le istruzioni per scegliere regione, piattaforma e altre opzioni. Per istruzioni dettagliate, vedi Gestione degli ambienti Elastic Beanstalk con l'interfaccia a riga di comando EB.

Per impostazione predefinita, Elastic Beanstalk cerca un file denominato application.py per avviare l'applicazione. Se questo non esiste nel progetto Python creato, sono necessari alcuni aggiustamenti dell'ambiente della tua applicazione. Dovrai anche impostare le variabili di ambiente per consentire il caricamento dei moduli della tua applicazione. Per ulteriori informazioni, consultare Utilizzo della piattaforma Python di Elastic Beanstalk.