有没有一种好方法可以在不更改客户端的情况下在我的家庭网络上缓存 apt 和 pip 包?
Is there a good way to cache apt and pip packages on my home network without changes to my clients?
我正在通过较慢的互联网连接测试和构建大量容器。每次我测试重建时,它都必须重新下载所有 apt 和 pip 包。
我看到了一些使用 docker 进行本地缓存的解决方案,但我需要构建过程为其他开发人员以及在部署期间工作。
我还找到了一些使用本地服务器缓存 apt 和 pip 的解决方案,但所有这些都需要对客户端进行更改,这对我来说也不适用。
有什么方法可以设置路由器级别的 DNS 重定向到本地包缓存服务器,或类似的解决方案?
此外,希望避免 XY 问题,我是否缺少更好的解决方案?
谢谢!
我最后添加了
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,target=/var/lib/apt,sharing=locked \
apt update && apt install -y python3.8 ...
和
RUN --mount=type=cache,target=/root/.cache/pip pip3 install -r requirements.txt
添加到 Dockerfile 中,这大大减轻了过程的痛苦。
我正在通过较慢的互联网连接测试和构建大量容器。每次我测试重建时,它都必须重新下载所有 apt 和 pip 包。
我看到了一些使用 docker 进行本地缓存的解决方案,但我需要构建过程为其他开发人员以及在部署期间工作。
我还找到了一些使用本地服务器缓存 apt 和 pip 的解决方案,但所有这些都需要对客户端进行更改,这对我来说也不适用。
有什么方法可以设置路由器级别的 DNS 重定向到本地包缓存服务器,或类似的解决方案?
此外,希望避免 XY 问题,我是否缺少更好的解决方案?
谢谢!
我最后添加了
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,target=/var/lib/apt,sharing=locked \
apt update && apt install -y python3.8 ...
和
RUN --mount=type=cache,target=/root/.cache/pip pip3 install -r requirements.txt
添加到 Dockerfile 中,这大大减轻了过程的痛苦。