在 Dockerfile 中安装 python 而不使用 python 镜像作为基础

bob*_*bob 9 python docker digital-ocean dockerfile

我有一个使用 DigitalOcean 工具(doctl 和 kubectl)的 python 脚本,我想要容器化。这意味着我的容器需要安装 python、doctl 和 kubectl。问题是,我弄清楚如何在 dockerfile 中安装 python 和 DigitalOcean 工具。

我可以使用基本映像“python:3”安装 python,还可以使用基本映像“alpine/doctl”安装 DigitalOcean 工具。但是,规则是您只能在 dockerfile 中使用一个基础映像。

因此,我可以包含 python 基础映像并以另一种方式安装 DigitalOcean 工具:

FROM python:3
RUN <somehow install doctl and kubectl>
RUN pip install firebase-admin
COPY script.py
CMD ["python", "script.py"]
Run Code Online (Sandbox Code Playgroud)

或者我可以包含 alpine/doctl 基本映像并以另一种方式安装 python3。

FROM alpine/doctl
RUN <somehow install python>
RUN pip install firebase-admin
COPY script.py
CMD ["python", "script.py"]
Run Code Online (Sandbox Code Playgroud)

不幸的是,我不确定我会如何做到这一点。任何有关如何安装所有这些工具的帮助都会很棒!

Gui*_*ski 8

只需将其与您想要的任何其他内容添加即可apt-get install

RUN apt-get update && apt-get install -y \
    python3.6 &&\
    python3-pip &&\
Run Code Online (Sandbox Code Playgroud)

在高山,它应该是这样的:

RUN apk add --update --no-cache python3 && ln -sf python3 /usr/bin/python &&\
    python3 -m ensurepip &&\
    pip3 install --no-cache --upgrade pip setuptools &&\
Run Code Online (Sandbox Code Playgroud)