Я бы хотел, чтобы Flask API работал в докере с окружением conda.
Кажется, я могу установить окружение conda из файла .yml.
Но я могу 'я не могу запустить приложение, когда я запускаю Docker.
У меня просто есть ошибки из-за несуществующих файлов
exec source activate flask_env && python app.py failed: No such file or directory
API фляги основан на простом примере:
from flask import Flask, jsonify
app = Flask(__name__)
@app.route('/', methods=['GET'])
def hello_world():
return jsonify({'message': 'Hello World'})
@app.route('/test', methods=['GET'])
def test():
return jsonify({'test': 'test'})
if __name__ == "__main__":
app.run(debug=True) # remember to set debug to False
Файл Docker:
FROM continuumio/miniconda3:latest
WORKDIR /app
# Install myapp requirements
COPY environment.yml /app/environment.yml
RUN conda config --add channels conda-forge \
&& conda env create -n myapp -f environment.yml \
&& rm -rf /opt/conda/pkgs/*
# Copy all files after to avoid rebuild the conda env each time
COPY . /app/
# activate the myapp environment
ENV PATH /opt/conda/envs/myapp/bin:$PATH
# Launch the API
CMD [ "source activate flask_env && python app.py" ]
И файл среды:
name: myapp
channels:
- conda-forge
- defaults
dependencies:
- flask=1.0.2
- python=3.7.3
Я много чего пробовал, но не могу заставить его работать.Я что-то пропустил?
Спасибо