Maison > développement back-end > Tutoriel Python > Comment déployer des applications à l'aide de la conteneurisation Docker dans FastAPI

Comment déployer des applications à l'aide de la conteneurisation Docker dans FastAPI

WBOY
Libérer: 2023-07-28 13:25:51
original
4058 Les gens l'ont consulté

Comment déployer des applications à l'aide de la conteneurisation Docker dans FastAPI

Introduction :
Docker est une technologie de conteneurisation qui regroupe les applications et leurs dépendances dans un conteneur autonome et portable, permettant un déploiement et une extension rapides. FastAPI est un framework Web moderne et performant basé sur Python qui offre une expérience de développement d'API simple et rapide. Cet article explique comment utiliser la conteneurisation Docker pour déployer des applications dans FastAPI et fournit des exemples de code correspondants.

Étape 1 : Créer une application FastAPI
Tout d'abord, nous devons créer une application FastAPI simple. Voici un exemple simple :

from fastapi import FastAPI

app = FastAPI()

@app.get("/")
def read_root():
    return {"Hello": "World"}
Copier après la connexion

Dans le code ci-dessus, nous avons créé une application FastAPI de base qui renverra une réponse JSON lorsque l'utilisateur accédera à l'application via le chemin racine.

Étape 2 : Écrire un fichier Docker
Ensuite, nous devons écrire un fichier Docker, qui est utilisé pour créer l'image Docker. Créez un fichier nommé Dockerfile dans le répertoire racine du projet et ajoutez le contenu suivant :

FROM tiangolo/uvicorn-gunicorn-fastapi:python3.7

COPY ./app /app

WORKDIR /app

RUN pip install -r requirements.txt

CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "80"]
Copier après la connexion

Dans le Dockerfile ci-dessus, nous avons d'abord sélectionné une image de base tiangolo/uvicorn-gunicorn-fastapi:python3.7 qui convient à FastAPI. Ensuite, nous copions le dossier app du répertoire du projet dans le répertoire /app du conteneur et définissons le répertoire de travail sur /app. Ensuite, nous installons les dépendances de l'application en exécutant pip install -r Requirements.txt. Enfin, nous lançons l'application à l'aide de la commande CMD.

Étape 3 : Créer l'image Docker
Dans la ligne de commande, basculez vers le répertoire racine du projet et exécutez la commande suivante pour créer l'image Docker :

docker build -t fastapi-app .
Copier après la connexion

La commande ci-dessus utilisera le fichier Docker pour créer une image Docker nommée application fastapi. '.' signifie que le Dockerfile se trouve dans le répertoire actuel.

Étape 4 : Exécuter le conteneur Docker
Après avoir construit l'image Docker, nous pouvons utiliser la commande suivante pour exécuter le conteneur Docker :

docker run -d -p 80:80 fastapi-app
Copier après la connexion

Dans la commande ci-dessus, -d signifie exécuter le conteneur en tant que démon, et -p 80 :80 signifie changer d'hôte. Le port 80 est mappé au port 80 du conteneur et fastapi-app représente l'image Docker à exécuter.

Maintenant, nous avons réussi à conteneuriser l'application FastAPI et à l'exécuter via Docker.

Conclusion : 
En conteneurisant les applications FastAPI, nous pouvons réaliser un déploiement et une mise à l'échelle rapides. Les conteneurs Docker facilitent le regroupement d'une application et de ses dépendances dans un conteneur autonome et portable, réduisant ainsi la complexité du déploiement et de la configuration. Cet article décrit comment utiliser la conteneurisation Docker pour déployer des applications dans FastAPI et fournit des exemples de code correspondants. J'espère que cet article vous aidera !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal