我正在尝试为git lab更新我的CI管道,但我的管道一直失败,因为我的runner的docker中的docker无法安装python 3.8。
在我的Docker文件中,我正在运行以下命令
FROM ubuntu:latest
ENV http_proxy $HTTPS_PROXY
ENV https_proxy $HTTPS_PROXY
RUN apt-get update && apt-get install -y
python3.8
python3-pip
&& rm -rf /var/lib/apt/lists/*
但是我的管道失败了,给了我以下错误
包python3.8不可用,但被另一个包引用。这可能意味着包丢失、已废弃或只能从另一个源获得
E:包"python3.8"没有候选安装
错误构建映像:错误构建阶段:未能执行命令:等待进程退出:退出状态100
在许多建议中,我发现使用apt-get-update命令应该可以解决问题,但这对我来说不起作用。
默认情况下,最新的Ubunt repos不包含旧的Python版本。
您可以尝试使用较新的Python版本,也可以添加类似于以下内容的deadsnakes
repo:
FROM ubuntu:latest
ENV http_proxy $HTTPS_PROXY
ENV https_proxy $HTTPS_PROXY
RUN apt-get install -y software-properties-common && sudo add-apt-repository ppa:deadsnakes/ppa && apt-get update && apt-get install -y
python3.8
python3-pip
&& rm -rf /var/lib/apt/lists/*
在安装software-properties-common
软件包之前,您可能还需要apt update
。
作为一种替代方案,您可以始终考虑使用一个官方的python docker映像,而不是自己在ubuntu映像上安装python。
python:3.8-bster或python+3.8-slim-bster可能足够接近您的需求?