Контейнер Docker выходит из macOS?

#python #docker

Вопрос:

Я создал образ докера из следующего файла докера:

 FROM python:3.6.4-slim-jessie

COPY . /app
WORKDIR /app

RUN pip install pandas
RUN pip install numpy
RUN pip install -U flask
RUN pip install networkx

ENTRYPOINT [ "python3" ]
CMD [ "flask_vis.py" ]
 

Он в значительной степени просто загружает необходимые пакеты для приложения flask (flask_vis.py). Когда контейнер запущен, приложение должно запуститься.

Вот соответствующие строки из flask_vis.py:

 from flask import Flask, render_template, url_for, request, redirect
import pandas as pd
import networkx as nx
import time

app = Flask(__name__)

print("Reading pickles...")
start = time.time()


edges_df=pd.read_pickle("edges_table.pkl")
print("done with 1")
nodes_df=pd.read_pickle("nodes_table_all_labelled.pkl")
print("done with 2")
ev_df=pd.read_pickle("evidence.pkl")
print("done with 3")
print(f"Took {round(time.time() - start, 3)}s to load pickles.")

G = nx.from_pandas_edgelist(edges_df, edge_attr=True, source="source_id", target="target_id", create_using=nx.DiGraph())


@app.route('/', methods=["POST","GET"])
def home():
    if request.method=="POST":
        query_type=request.form["query_type"]
        if query_type=="Query with Dijkstra's algorithm":
            query_type="dijkstra"
            return redirect(url_for("validate", query_type=query_type))
        else:
            query_type="single"
            return redirect(url_for("validate", query_type=query_type))
    else:
        return render_template("home.html")
 

Я построил контейнер с docker build --tag appname .
Когда я запускал его с docker run -t -p 5001:5001 appname помощью консоли, он выводил «Чтение соленых огурцов», «готово с 1» и «готово с 2». Однако контейнер закрывался до того, как он читал третий рассол. Это происходит, когда я запускаю контейнер на mac, но он работает в Windows. Почему это происходит? Есть ли какой-нибудь способ заставить его работать и на mac?

Комментарии:

1. Как выглядит docker logs результат?

2. Они пустые; в них нет никаких ошибок