snapcraft cleanbuild
soll mich Schnappschüsse in Reinraumumgebungen bauen lassen. Dementsprechend geht es von einem minimalen LXD-Image aus und installiert die erforderlichen Pakete. Es scheint jedoch den Basisspiegel zu verwenden archive.ubuntu.com
, der unglaublich langsam ist. Wie kann ich die heruntergeladenen Pakete zwischenspeichern?
Ich könnte einen apt-cacher-ng
anderen Caching-Proxy einrichten , aber es besteht immer noch das Problem, dass die Snap / LXD-Kombination verwendet wird. Es wäre am besten, wenn es einen internen Cache hätte, wie es pbuilder tut, aber wenn nicht, wie kann ich dann davon überzeugen, dass es einen anderen Spiegel oder einen Proxy für den Spiegel verwendet?
snapcraft cleanbuild
es nicht (apt-cacher-ng hat keine Änderungen in den Protokollen oder im Cache-Verzeichnis)environment.http_proxy
anstelle vonuser.user-data/apt
und einen allgemeineren Squid / Apt-Cacher-ng-Proxy anstelle von Squid-Deb-Proxy verwendet, aber die Kernidee ist daAntworten:
Die Grundprinzipien, wie sie in Papsts Vorschlagsarbeit dargelegt sind :
Holen Sie sich die Host-IP-Adresse (wie vom Container gesehen):
Verwenden Sie diese Option, um die Standardeinstellungen für den Profilproxy festzulegen:
Es gibt jedoch einige Einschränkungen.
snapcraft cleanbuild
lädt viele Pakete über einen anderen als den üblichen Mechanismus herunterapt-get
, der von dieser Konfiguration nicht betroffen ist. Dieser Wahnsinn ist in diesem Teil der Ausgabe zu sehen:Es gibt einige davon, und die einzelnen Anforderungen machen sie sowieso höllisch langsam, und das zählt nicht, dass die zuvor festgelegten Einstellungen für den passenden Proxy sie nicht beeinflussen.
Also setze ich
http_proxy
stattdessen die Umgebungsvariable:Ähnliches gilt für HTTPS, da einige andere Downloads im Container HTTPS verwendeten. Normalerweise bevorzuge ich apt-cacher-ng, aber es unterstützt HTTPS CONNECT nicht, also bin ich zu Squid gewechselt.
quelle