Erreur Docker Flask Python
RésoluBonjour,
Je viens de dockeriser mon serveur web python avec la bibliothèque flask et flask_restful, j'ai crée les fichiers docker-compose.yml et dockerfile. Mais quand je lance
docker-compose up -d
la base de donnée se lance, mais pour le serveur web j'obtiens l'erreur suivante :
Traceback (most recent call last):
File "/app/ServeurWeb.py", line 4, in <module>
from flask import Flask, render_template, jsonify, url_for, request
File "/usr/local/lib/python3.9/site-packages/flask/__init__.py", line 19, in <module>
from jinja2 import Markup, escape
ImportError: cannot import name 'Markup' from 'jinja2' (/usr/local/lib/python3.9/site-packages/jinja2/__init__.py)
Voici mes fichiers:
Dockerfile:
FROM python:3.9-slim-buster
WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY ServeurWeb.py .
CMD [ "python", "/ServeurWeb.py" ]
Docker-compose.yml:
version: '3'
services:
web:
build: .
ports:
- "5000:5000"
environment:
- MONGO_URI=mongodb://mongo:27017/mydb
volumes:
- ./app:/app
depends_on:
- mongo
mongo:
image: mongo:latest
ports:
- "27017:27017"
Merci par avance !
Windows / Chrome 110.0.0.0
A voir également:
- Erreur Docker Flask Python
- Citizen code python avis - Accueil - Outils
- Erreur t32 ✓ - Forum Livebox
- Mot secret python pix ✓ - Forum Python
- Erreur 0x80070570 ✓ - Forum Windows 10
- Erreur s3 bbox - Forum Bbox Bouygues
1 réponse
Bonjour,
Ta version de jinja est trop vieille et c'est pourquoi elle ne fournit pas la classe Markup, comme l'explique cette discussion. Il faut corriger ton fichier requirements.txt pour forcer l'installation d'une version plus récente.
Bonne chance