snapcraft cleanbuild
deve me permitir criar snaps em ambientes de sala limpa. Assim, ele começa a partir de uma imagem LXD mínima e instala os pacotes necessários. No entanto, parece usar o archive.ubuntu.com
espelho de base, que é terrivelmente lento. Como faço para armazenar em cache os pacotes que ele baixa?
Eu poderia configurar apt-cacher-ng
ou outro proxy de cache, mas ainda há o problema de obter a combinação snap/LXD para usá-lo. Seria melhor se tivesse um cache interno como o pbuilder, mas se não, como convencê-lo a usar um espelho diferente ou um proxy para o espelho?
Os princípios básicos descritos na sugestão de Popey funcionam:
Obtenha o endereço IP do host (conforme visto pelo contêiner):
Use-o para definir as configurações de proxy do perfil padrão:
No entanto, há algumas ressalvas.
snapcraft cleanbuild
baixa muitos pacotes por algum outro mecanismo diferente do usualapt-get
, que não é afetado por esta configuração. Essa insanidade é vista nesta parte da saída:Existem alguns deles, e as solicitações individuais os tornam lentos como o inferno de qualquer maneira, e isso sem contar que as configurações de proxy do apt definidas anteriormente não os afetam.
Então, defino a
http_proxy
variável de ambiente:E da mesma forma para HTTPS, já que alguns outros downloads no contêiner usaram HTTPS. Normalmente prefiro o apt-cacher-ng, mas ele não suporta HTTPS CONNECT, então mudei para o squid.