Condividi tramite


Panoramica dei modelli Web di Python azd

I modelli dell'interfaccia della riga di comando per sviluppatori Di Azure Web Python (azd) sono il modo più rapido e semplice per iniziare a creare e distribuire applicazioni Web Python in Azure. Questo articolo fornisce informazioni di base contestuali durante l'introduzione.

Il modo migliore per iniziare è seguire la guida introduttiva per creare la prima applicazione Web Python e distribuirla in Azure in pochi minuti con azd i modelli. Se non si vuole configurare un ambiente di sviluppo locale, è comunque possibile seguire la guida introduttiva usando GitHub Codespaces .

Che cosa sono i modelli azd Web Python?

Nella raccolta Awesome AZD Templates sono disponibili molti azd modelli. Tuttavia, questa raccolta di modelli Web azd Python è unica, in quanto fornisce un'applicazione Web di esempio con parità di funzionalità in molte combinazioni comuni di risorse di Azure e framework Web Python.

Quando si esegue un modello Web azd Python, si eseguiranno le operazioni seguenti:

  • Creare un'applicazione iniziale: in particolare, un sito Web per una società fittizia denominata Relecloud. Il codice del progetto include molte procedure consigliate per i framework e i pacchetti Python specificati necessari per quel particolare stack di tecnologie. Il modello deve essere un punto di partenza per l'applicazione. Aggiungere o rimuovere la logica dell'applicazione e le risorse di Azure in base alle esigenze.
  • Effettuare il provisioning delle risorse di Azure: il modello effettua il provisioning delle risorse di Azure per ospitare l'app Web e il database usando Bicep, uno strumento diffuso di infrastruttura come codice. Anche in questo caso, si modificano i modelli Bicep se è necessario aggiungere altri servizi di Azure.
  • Distribuire l'applicazione iniziale alle risorse di Azure di cui è stato appena effettuato il provisioning: l'applicazione iniziale viene distribuita automaticamente in modo da poter visualizzare tutto il lavoro in pochi minuti e decidere cosa si vuole modificare.
  • Facoltativo: configurare un repository GitHub e una pipeline CI/CD: se si vuole, il modello contiene la logica per configurare un repository GitHub, inclusa una pipeline CI/CD di GitHub Actions. Entro pochi minuti, è possibile apportare modifiche al codice del progetto Web. Quando si uniscono tali modifiche al ramo principale del repository GitHub, la pipeline CI/CD li pubblica nel nuovo ambiente di hosting di Azure.

Chi è per questo?

I modelli devono essere usati da sviluppatori Web Python esperti che vogliono iniziare a creare una nuova applicazione Web Python destinata alla distribuzione di Azure.

Perché dovrei usarlo?

L'uso dei azd modelli offre diversi vantaggi:

  • Avvio più rapido: con l'ambiente di sviluppo locale e le configurazioni dell'ambiente di hosting, è possibile concentrarsi sulla compilazione dell'applicazione in pochi minuti.
  • Avvio più semplice: eseguire solo alcune istruzioni della riga di comando per creare un intero ambiente di sviluppo, hosting e distribuzione locale. Il flusso di lavoro è facile da usare e facile da ricordare.
  • Compilazione delle procedure consigliate : ogni modello viene creato e gestito da Python nei veterani del settore Di Azure. Aggiungere il codice seguendo i relativi approcci di progettazione per basarsi su una solida base.

Indice dei modelli

La tabella seguente elenca i moniker del modello Web azd Python disponibili da usare con il azd init comando , le tecnologie implementate in ogni modello e un collegamento al repository GitHub se si desidera contribuire alle modifiche.

Template Web Framework Database Piattaforma di hosting Repository GitHub
azure-django-postgres-flexible-aca Django Server flessibile PostgreSQL App contenitore di Azure repo
azure-django-postgres-flexible-appservice Django Server flessibile PostgreSQL Servizio app di Azure repo
azure-django-cosmos-postgres-aca Django Cosmos DB (adapter PostgreSQL) App contenitore di Azure repo
azure-django-cosmos-postgres-appservice Django Cosmos DB (adapter PostgreSQL) Servizio app di Azure repo
azure-django-postgres-addon-aca Django Componente aggiuntivo PostgreSQL per app Contenitore di Azure App contenitore di Azure repo

Come funzionano i modelli?

È possibile usare vari azd comandi per eseguire attività definite da un azd modello. Questi comandi sono descritti in dettaglio in Introduzione all'uso dell'interfaccia della riga di comando per sviluppatori di Azure.

Il azd modello include un repository GitHub contenente il codice dell'applicazione (codice Python che usa un framework Web diffuso) e i file infrastructure-as-code (vale a nome Bicep) per creare le risorse di Azure. Contiene anche la configurazione necessaria per configurare un repository GitHub con una pipeline CI/CD.

La guida introduttiva illustra i passaggi per usare un modello specifico azd . Richiede solo di eseguire cinque istruzioni della riga di comando per l'ambiente di hosting di produzione e l'ambiente di sviluppo locale:

  1. azd init --template <template name> : crea un nuovo progetto da un modello e crea una copia del codice dell'applicazione nel computer locale. Il comando richiede di specificare un nome di ambiente ( ad esempio "myapp") usato come prefisso int la denominazione delle risorse distribuite.
  2. azd auth login : consente di accedere ad Azure. Il comando apre una finestra del browser in cui è possibile accedere ad Azure. Dopo l'accesso, la finestra del browser viene chiusa e il comando viene completato. Il azd auth login comando è necessario solo la prima volta che si usa l'interfaccia della riga di comando per sviluppatori di Azure (azd) per sessione.
  3. azd up : effettua il provisioning delle risorse cloud e distribuisce l'app a tali risorse.
  4. azd deploy : distribuisce le modifiche apportate al codice sorgente dell'applicazione alle risorse già sottoposte a provisioning da azd up.
  5. azd down : elimina le risorse di Azure e la pipeline CI/CD se è stata usata.

Suggerimento

Controllare l'output per azd le richieste di risposta. Ad esempio, dopo l'esecuzione del azd up comando, potrebbe essere richiesto di selezionare una sottoscrizione se si appartiene a più di una sottoscrizione. Inoltre, verrà richiesto di selezionare un'area. È possibile modificare le risposte alle richieste modificando le variabili di ambiente archiviate nella cartella /.azure/ del modello.

Al termine del modello, è disponibile una copia personale del modello originale in cui è possibile modificare ogni file in base alle esigenze. È possibile modificare almeno il codice del progetto Python in modo che il progetto abbia la logica di progettazione e applicazione. È anche possibile modificare la configurazione dell'infrastruttura come codice se è necessario modificare le risorse di Azure. Vedere la sezione Intitolata Cosa è possibile modificare o eliminare?

Facoltativo: Modificare e ripetere il provisioning delle risorse di Azure

Per modificare le risorse di Azure di cui è stato effettuato il provisioning, è possibile modificare i file Bicep appropriati nel modello e usare:

  1. azd provision : esegue il provisioning delle risorse di Azure allo stato desiderato come definito nei file Bicep.

Configurare una pipeline CI/CD

L'interfaccia della riga di comando per sviluppatori di Azure (azd) offre un modo semplice per configurare una pipeline CI/CD per la nuova applicazione Web Python. Ogni volta che si uniscono i commit o le richieste pull nel ramo principale, la pipeline CI/CD compila e pubblica automaticamente le modifiche alle risorse di Azure.

Facoltativo: configurare automaticamente la pipeline CI/CD di GitHub Actions

Per implementare la funzionalità della pipeline CI/CD di GitHub Actions, usare il comando seguente:

  1. azd pipeline config - Consente di designare un repository GitHub e le impostazioni per abilitare la pipeline CI\CD. Dopo la configurazione, ogni volta che le modifiche al codice vengono unite al ramo principale del repository, la pipeline distribuisce le modifiche ai servizi di Azure di cui è stato effettuato il provisioning.

Quali sono le mie altre opzioni?

Se non si vogliono usare azd modelli, è possibile distribuire l'app Python in Azure e creare risorse di Azure in molti modi.

È possibile eseguire molti passaggi di creazione e distribuzione delle risorse usando uno degli strumenti seguenti:

In alternativa, se si sta cercando un'esercitazione end-to-end che include framework di sviluppo Web Python, vedere:

È necessario usare i contenitori di sviluppo?

No. I modelli Web azd Python usano i contenitori di sviluppo per impostazione predefinita. I contenitori di sviluppo offrono molti vantaggi, ma richiedono alcune conoscenze e software prerequisiti. Se invece non si vuole usare i contenitori di sviluppo e si preferisce usare l'ambiente di sviluppo locale, vedere il file README.md nella directory radice dell'app di esempio per le istruzioni di installazione dell'ambiente.

Cosa è possibile modificare o eliminare?

Il contenuto di ogni azd modello può variare a seconda del tipo di progetto e dello stack di tecnologie sottostante utilizzato. I modelli elencati in questo articolo seguono una convenzione comune:

Cartella/File Scopo Descrizione
/ directory radice La directory radice contiene molti tipi diversi di file e cartelle per molti scopi diversi.
/.Azure azd file di configurazione Contiene le variabili di ambiente usate dai comandi dell'interfaccia della riga di comando per sviluppatori di Azure (azd). Questa cartella viene creata dopo l'esecuzione del azd init comando . È possibile modificare i valori delle variabili di ambiente per personalizzare l'app e le risorse di Azure. Per altre informazioni, vedere File con estensione env specifico dell'ambiente.
/.devcontainer File di configurazione di Dev Container I contenitori di sviluppo consentono di creare un ambiente di sviluppo basato su contenitori completo di tutte le risorse necessarie per lo sviluppo software all'interno di Visual Studio Code.
.github/ Configurazione di GitHub Actions Contiene le impostazioni di configurazione per la pipeline CI/CD di GitHub Actions facoltativa, nonché l'linting e i test. Il file azure-dev.yaml può essere modificato o eliminato se non si vuole configurare la pipeline di GitHub Actions usando azd pipeline config il comando .
/Infra File Bicep Bicep consente di dichiarare le risorse di Azure da distribuire nell'ambiente. È consigliabile modificare solo i file main.bicep e web.bicep. Vedere Avvio rapido: Ridimensionare i servizi distribuiti con i azd modelli Web Python con Bicep.
/Src file di codice del progetto iniziale Include tutti i modelli necessari per il framework Web, i file statici, i file con estensione py per la logica del codice e i modelli di dati, un requirements.txte così via. I file specifici dipendono dal framework Web, dal framework di accesso ai dati e così via. È possibile modificare questi file in base ai requisiti del progetto.
/.cruft.json file di generazione di modelli Usato internamente per generare i azd modelli. È possibile eliminare il file in modo sicuro.
/.gitattributes Attributi git Fornisce git con una configurazione importante sulla gestione di file e cartelle. È possibile modificare questo file in base alle esigenze.
/.gitignore git ignore Indica a Git di ignorare i file e le cartelle da includere nel repository. È possibile modificare questo file in base alle esigenze.
/azure.yaml azd file di configurazione Contiene le impostazioni di configurazione per azd up dichiarare quali servizi e cartelle di progetto verranno distribuiti. Questo file NON DEVE essere eliminato.
/*.Md file markdown Esistono diversi file markdown per scopi diversi. È possibile eliminare questi file in modo sicuro.
/docker-compose.yml Docker Compose Crea il pacchetto del contenitore per l'applicazione prima che venga distribuito in Azure.
/pyproject.toml Sistema di compilazione Python Contiene i requisiti di sistema di compilazione dei progetti Python. È possibile modificare questo file in modo da includere gli strumenti preferiti, ad esempio per usare un framework linter e unit testing.
/requirements-dev.in file dei requisiti pip Usato per creare una versione dell'ambiente di sviluppo dei requisiti usando pip install -r il comando . È possibile modificare questo file in modo da includere altri pacchetti in base alle esigenze.

Suggerimento

Usare procedure di controllo della versione valide per poter tornare a un punto nel tempo in cui il progetto funziona nel caso in cui si interrompa in modo inspiegabile qualcosa.

Domande frequenti

D: Si è verificato un errore quando si usa un azd modello. Cosa posso fare?

R: Vedere Risolvere i problemi dell'interfaccia della riga di comando per sviluppatori di Azure. È anche possibile segnalare problemi nel repository GitHub del modello corrispondente azd .