Невозможно запустить Docker-контейнер с помощью Python UWSGI - PullRequest
0 голосов
/ 03 февраля 2019

Я создаю небольшое приложение Python (колбу).

Образ успешно создан, но контейнер не запущен.Когда я запускаю docker ps, работающий контейнер не обнаруживается.Также в журналах докера отображаются uwsgi not found

identidock.py:

from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_docker():
    return 'Hellow docker!\n'

if __name__ == '__main__':
    app.run(debug=True, host='0.0.0.0')

Dockerfile:

FROM python:3.6

RUN pip install Flask==0.10.1
RUN pip install uWSGI==2.0.17
WORKDIR /app
COPY app /app

CMD ["uwsgi", "--http", "0.0.0.0:9090". "--wsgi-file", 
"/app/identidock.py", "--callable", "app", "--stats", "0.0.0.0:9191"]

Выполнены команды:

sudo docker build -t identidock .   <<< no problem
sudo docker run -d -p 9090:9090 -p 9191:9191 identidock << no problem
sudo docker ps     << empty   
sudo docker logs <container ID>  > >>/bin/sh: 1: [uwsgi,: not found

1 Ответ

0 голосов
/ 04 февраля 2019

если вы строите образ докера с помощью этой строки CMD ["uwsgi", "--http", "0.0.0.0:9090". "--wsgi-file", "/app/identidock.py", "--callable", "app", "--stats", "0.0.0.0:9191"], после "0.0.0.0:9090" у вас есть точка, которую нужно изменить на ,.

Файл Docker должен быть:

FROM python:3.6

RUN pip install Flask==0.10.1
RUN pip install uWSGI==2.0.17
WORKDIR /app
COPY app /app

CMD ["uwsgi", "--http", "0.0.0.0:9090", "--wsgi-file", "/app/identidock.py", "--callable", "app", "--stats", "0.0.0.0:9191"]

Это должно работать ...

...