构建 docker 映像时无法安装包

Fail to install package when building docker image

我使用以下代码将 gdal 添加到我的 docker 图像中:

FROM node:7-onbuild

RUN apt-get -y update && apt-get -y install software-properties-common 
python-software-properties
RUN add-apt-repository ppa:ubuntugis/ppa
RUN apt-get -y update && apt-get -y install gdal-bin

add-apt-repository之后执行apt-get -y update总是returns错误:

W: Failed to fetch 
http://ppa.launchpad.net/ubuntugis/ppa/ubuntu/dists/jessie/main/binary-amd64/Packages  404  Not Found

E: Some index files failed to download. They have been ignored, or old ones used instead.

我在执行docker时添加了--no-cachebuild

知道错误吗?

那是因为节点镜像是基于 debian jessie 的。您添加的 ppa 适用于 ubuntu 个不同的版本,而不是 debian

这就是为什么您的 url 给出了 404。您也可以在浏览器中签入“http://ppa.launchpad.net/ubuntugis/ppa/ubuntu/dists/jessie/main/binary-amd64/Packages

您需要为您感兴趣的包找到 debian:jessie ppa