GitHub Action构建Docker容器时APT更新失败问题求助
问题分析与解决方案
这个错误不是通用Linux系统问题,而是GitHub Actions公共运行器环境与jupyter/tensorflow-notebook基础镜像的APT配置兼容性冲突导致的。
报错原因
jupyter/tensorflow-notebook镜像默认配置了APT的Post-Invoke脚本,用于更新后清理缓存包。但GitHub Actions公共运行器的容器环境存在特殊的权限或缓存目录状态,导致执行清理命令时触发错误——即使脚本末尾加了|| true,APT仍捕获到了子进程错误并返回非零码。本地构建环境无此限制,因此能正常执行。
解决方法
可以通过以下几种方式绕过这个问题:
临时禁用APT清理脚本:在
apt-get update前重置Post-Invoke配置FROM jupyter/tensorflow-notebook:latest USER root RUN echo 'APT::Update::Post-Invoke "";' >> /etc/apt/apt.conf.d/99custom && apt-get update跳过APT更新后的清理步骤:使用
--no-cleanup参数执行更新FROM jupyter/tensorflow-notebook:latest USER root RUN apt-get update --no-cleanup
内容的提问来源于stack exchange,提问作者codigube
相关产品推荐
相关产品推荐

