Ich verfolge die Docker-getting started Führung Docker mit einer Python-Anwendung zu verwenden, aber wenn Docker auf den Befehl aufstehen:mit Docker verschiedenen Python als System
docker run -p 80:80 username/repo:tag
ich die folgende Fehlermeldung erhalten:
Traceback (most recent call last):
File "app.py", line 1, in <module>
from flask import Flask
ImportError: No module named flask
habe ich installiert Flask
für, wenn ich laufen which flask
und which python
/usr/local/bin/flask
/usr/local/bin/python
werden zurückgegeben. Wenn ich jedoch sudo pip install Flask
führe, bekomme ich
Requirement already satisfied: flask in ./python2.7/site-packages
Requirement already satisfied: click>=2.0 in ./python2.7/site-
packages (from flask)
Requirement already satisfied: Werkzeug>=0.7 in ./python2.7/site-
packages (from flask)
Requirement already satisfied: Jinja2>=2.4 in ./python2.7/site-
packages (from flask)
Requirement already satisfied: itsdangerous>=0.21 in
./python2.7/site-packages (from flask)
Requirement already satisfied: MarkupSafe>=0.23 in ./python2.7/site-
packages (from Jinja2>=2.4->flask)
was eindeutig ein anderes Verzeichnis ist. Mein erster Gedanke wäre, dass ich Python aus zwei verschiedenen Verzeichnissen verwende und deshalb kann ich den Docker-Befehl nicht ausführen. Aber ich bin auch ein Anfänger und weiß nicht wirklich, wie ich mit der Fehlersuche beginnen und das Problem beheben kann. Ich würde es sehr schätzen, wenn mir jemand hier ein paar Hinweise geben würde. Danke im Voraus.
EDIT Hier ist meine Dockerfile
# Use an official Python runtime as a parent image
FROM python:2.7-slim
# Set the working directory to /app
WORKDIR /app
# Copy the current directory contents into the container at /app
ADD . /app
# Install any needed packages specified in requirements.txt
RUN pip install -r requirements.txt --proxy
https://proxy:8080 --trusted-host pypi.python.org
# Make port 80 available to the world outside this container
EXPOSE 80
# Define environment variable
ENV NAME World
# Run app.py when the container launches
Aber haben Sie python/flask/etc in Ihrem Docker Container installiert? –
@ A.Haaji, ja ich tat, weil ich die App aus dem Container heraus ausführen konnte. –
könnten Sie bitte Ihre Dockerfile zur Verfügung stellen? –