在amazonlinux docker映像上安装python3.6

时间:2019-09-25 14:10:01

标签: docker dockerfile python-3.6 amazon-linux

我一直在尝试使用基于amazonlinux的python3.6创建一个docker镜像。 到目前为止,我还不是很成功。我用

docker run -it amazonlinux

启动交互式docker终端。在终端内部,我运行“ yum install python36”,并看到以下错误消息。请注意,我复制的这一步是从旧的基于amazonlinux的Dockerfile中复制的。这个Dockerfile曾经可以工作。所以我暂停了以下错误,原因是亚马逊更新了他们的docker linux映像

bash-4.2# yum install python36
Loaded plugins: ovl, priorities
amzn2-core       | 2.4 kB  00:00:00     
No package python36 available.
Error: Nothing to do

我已尝试通过关注此帖子来添加python3.6存储库 https://janikarhunen.fi/how-to-install-python-3-6-1-on-centos-7但是,当我运行

时,它仍然会给出相同的错误
yum install python36u

是否可以将python3.6添加到amazonlinux基础层?预先感谢。

3 个答案:

答案 0 :(得分:0)

您可以基于Amazon Linux并使用python版本为PYTHON_VERSION=3.6.4来检查此Dockerfile

或者您可以与现有的人一起工作

ARG PYTHON_VERSION=3.6.4
ARG BOTO3_VERSION=1.6.3
ARG BOTOCORE_VERSION=1.9.3
ARG APPUSER=app

RUN yum -y update &&\
    yum install -y shadow-utils findutils gcc sqlite-devel zlib-devel \
                   bzip2-devel openssl-devel readline-devel libffi-devel && \
    groupadd ${APPUSER} && useradd ${APPUSER} -g ${APPUSER} && \
    cd /usr/local/src && \
    curl -O https://www.python.org/ftp/python/${PYTHON_VERSION}/Python-${PYTHON_VERSION}.tgz && \
    tar -xzf Python-${PYTHON_VERSION}.tgz && \
    cd Python-${PYTHON_VERSION} && \
    ./configure --enable-optimizations && make && make altinstall && \
    rm -rf /usr/local/src/Python-${PYTHON_VERSION}* && \
    yum remove -y shadow-utils audit-libs libcap-ng && yum -y autoremove && \
    yum clean all

但最好克隆存储库并制作自己的图像形式。

答案 1 :(得分:0)

由于aws'extras',现在对这个问题的回答要容易得多。现在这将起作用:

amazon-linux-extras install python3

答案 2 :(得分:0)

我对docker也有类似的问题。

yum install docker

已加载的插件:ovl,优先级 amzn2核心| 3.7 kB 00:00:00 没有可用的docker软件包。 错误:没事

相反,我使用amazon-linux-extras,它有效

amazon-linux-extras安装docker