【问题标题】:How do I run brew command in docker image with From python:3.6 environment?如何使用 From python:3.6 环境在 docker 映像中运行 brew 命令?
【发布时间】:2020-07-28 17:06:42
【问题描述】:

我是 docker 新手。我构建了一个 python 烧瓶应用程序,现在我想为它创建一个 docker 映像。但是,在我的应用程序中,我使用 python 子进程来执行 Calibre 命令。我使用 brew 在本地机器上安装了 Calibre。现在我想知道它如何在“FROM python:3.6”环境下与docker一起工作?

我只是在我的 dockerfile 中添加“brew cask install calibre”吗?或者我需要配置自制软件等?

以下是我当前的 dockerfile:

FROM python:3.6

ENV FLASK_APP run.py

COPY run.py gunicorn-cfg.py requirements.txt .env ./
COPY app app

RUN pip install -r requirements.txt

EXPOSE 5005
CMD ["gunicorn", "--config", "gunicorn-cfg.py", "run:app"]

提前致谢!

【问题讨论】:

    标签: python docker flask homebrew-cask calibre


    【解决方案1】:

    我们可以看到python:3.6是基于Debian运行的:

     docker run -it python:3.6 /bin/bash -c 'cat /etc/*release'
    

    这给了我们:

    PRETTY_NAME="Debian GNU/Linux 10 (buster)"
    NAME="Debian GNU/Linux"
    VERSION_ID="10"
    VERSION="10 (buster)"
    VERSION_CODENAME=buster
    ID=debian
    HOME_URL="https://www.debian.org/"
    SUPPORT_URL="https://www.debian.org/support"
    BUG_REPORT_URL="https://bugs.debian.org/"
    

    Debian 没有预装 brew,但是,它带有 apt 软件包管理器和 debian.org 存储库,其中包含 calibre 软件包:

    RUN apt-get update
    RUN apt-get install -y calibre
    

    【讨论】:

    • 非常感谢!像魅力一样工作。我还从您的回答中学到了很多东西(如何检查特定环境支持的内容)!
    猜你喜欢
    • 2017-10-18
    • 2020-01-26
    • 2020-10-26
    • 1970-01-01
    • 2019-07-01
    • 2017-09-21
    • 2019-08-24
    • 2017-12-06
    • 1970-01-01
    相关资源
    最近更新 更多