【发布时间】:2021-11-22 07:42:58
【问题描述】:
我有一个 Python3.9 / Quart / Hypercorn 微服务,它在配置了 environment.yml 文件的 conda 环境中运行。基础镜像是 continuumio/miniconda3。
由于 conda init 问题等原因,需要进行大量黑客攻击才能启动。
有没有一种更简洁的方法可以在 Docker 中安装和激活 conda 环境,而无需求助于 conda run 命令并覆盖默认的 SHELL 命令?
FROM continuumio/miniconda3
COPY . /api/
WORKDIR /api/src
# See this tutorial for details https://pythonspeed.com/articles/activate-conda-dockerfile/
RUN conda env create -f /api/conda_environment_production.yml
SHELL ["conda", "run", "-n", "ms-amazing-environment", "/bin/bash", "-c"]
ENTRYPOINT ["conda", "run", "--no-capture-output", "-n", "ms-amazing-environment", "hypercorn", "--bind", "0.0.0.0:5000", "QuartAPI:app"]
EXPOSE 5000
【问题讨论】:
标签: python docker conda quart hypercorn