当前位置: 首页 > 知识库问答 >
问题:

在OpenJDK:7-jre-Alpine docker上如何安装python 3.6

丁毅庵
2023-03-14

直到大约一周前,我还在java映像上成功地使用了Python3.6脚本,如下所示:

FROM openjdk:7-jre-alpine

RUN apk update \
    && apk upgrade \
    && apk add --no-cache bash \
    && apk add --no-cache --virtual=build-dependencies unzip \
    && apk add --no-cache curl \
    && apk add --no-cache go

RUN apk add --no-cache python3 && \
    python3 -m ensurepip && \
    rm -r /usr/lib/python*/ensurepip && \
    pip3 install --upgrade pip setuptools && \
    if [ ! -e /usr/bin/pip ]; then ln -s pip3 /usr/bin/pip ; fi && \
    if [[ ! -e /usr/bin/python ]]; then ln -sf /usr/bin/python3 
/usr/bin/python; fi && \
    rm -r /root/.cache && \
    pip install kubernetes
&& apk add --no-cache bash \
    && echo -e "http://nl.alpinelinux.org/alpine/v3.5/main\nhttp://nl.alpinelinux.org/alpine/v3.5/community" > /etc/apk/repositories \
&& apk add --no-cache bash \
#&& apk add --no-cache --virtual=build-dependencies unzip \

如何在OpenJDK:7-jre-Alpine Docker上安装Python3.6[或我想要的任何版本]?

更新:现在所有的阿尔卑斯选项都失败了

共有1个答案

叶煌
2023-03-14

在花了几个小时尝试了许多不同的选项之后,包括在多个版本中重新安装docker。我设法使下面的Dockefile工作。请注意,我不得不重复构建几次。我的理论是我的WIFI或网络或VPN造成了超时。在我的Mac的本地docker repo上成功构建之后,我用virtualbox vm在minikube上尝试了同样的构建,在重复了几次相同的构建之后,它工作了,并且注意到沿着脚本进一步发生的错误。

下面是Dockerfile的价值:

FROM alpine:3.7

RUN apk update \
&& apk upgrade \
&& apk add --no-cache bash \
&& apk add --no-cache --virtual=build-dependencies unzip \
&& apk add --no-cache curl \
&& apk add --no-cache openjdk7-jre

RUN apk add --no-cache python3 \
&& python3 -m ensurepip \
&& pip3 install --upgrade pip setuptools \
&& rm -r /usr/lib/python*/ensurepip && \
if [ ! -e /usr/bin/pip ]; then ln -s pip3 /usr/bin/pip ; fi && \
if [[ ! -e /usr/bin/python ]]; then ln -sf /usr/bin/python3 /usr/bin/python; fi && \
rm -r /root/.cache


RUN pip install kubernetes
 类似资料:
  • 由于安全问题,Debian似乎不再支持openjdk-8-jdk。安装openjdk-8-jdk for Debian 10(Buster)最简单的方法是什么?

  • 本文向大家介绍如何在centos 7上安装docker,包括了如何在centos 7上安装docker的使用技巧和注意事项,需要的朋友参考一下 Docker是一个开源项目,可以自动在软件容器内部署应用程序。该容器允许开发人员打包所有项目资源,例如库,依赖项,资产等。Docker用Go编程语言编写,由Dotcloud开发。它基本上是一个容器引擎,使用诸如命名空间和控制组之类的Linux内核功能在操作

  • 我正在尝试在Ubuntu 20.10上安装OpenJDK 8和OpenJFX 8。 在Ubuntu上安装openJFX 8总是有点棘手,但我过去可以使用以下SO答案中的提示来完成:https://stackoverflow.com/a/56166582/2423283这曾经很好地工作(我想我使用的是Ubuntu19.something),但是最近似乎被删除了。 有关更多背景信息,我将通过自动管道中

  • 问题内容: 我的Mac当前正在运行Snow Leopard(10.6.8),我想使用Java 7进行开发。我从Oracle网站下载了Java 7 OS X安装程序,并开始运行它。不幸的是,我立即收到一条消息,说仅OS X Lion(10.7.3)支持安装程序。有什么方法可以通过Snow Leopard在计算机上安装Java 7?我不是为了升级Java而购买新的操作系统。我在附近搜索了一些,但没有找

  • 本文向大家介绍如何在CentOS 7上安装Go(Golang)1.7,包括了如何在CentOS 7上安装Go(Golang)1.7的使用技巧和注意事项,需要的朋友参考一下 在本文中,我们将学习如何安装和配置由Google及其开源编程语言开发的Go(golang)。它是一种简单,高效且可靠的编程语言,可简化开发。 先决条件 已安装一台CentOS计算机。 在CentOS计算机上具有Sudo权限的非r

  • 问题内容: 我在理解Java JRE的一些基本知识时遇到了麻烦。 我需要在嵌入式系统中运行Java代码,为此,我需要在Linux内核中安装最小的Java运行时环境,即执行Java二进制文件所需的最小程序包。我认为仅使用JVM是不可能的(JRE包是必需的,在这里我错了吗?) 事情是,看着Debian仓库的时候我也不太明白软件包之间的差异,和。Java程序将仅与前者一起运行吗?还是需要其中三个? 这是