kaz-vagrant/CACHING.md
2023-03-09 11:01:55 +01:00

2.1 KiB

Utilisation d'un cache local

Il est possible de configurer la VM pour utiliser un proxy et un registre docker du réseau local. L'intérêt est d'avoir un cache persistant lors de la reconstruction de la VM, ou de pouvoir rediriger certaines requêtes (dépôts Debian ou Alpine) vers des miroirs locaux.

Configuration de la VM

Dans le dossier vagrant du host, il faut un fichier files/customVM.sh. Un fichier files/customVM.sh.dist est fourni en exemple : il suffit de le renommer en customVM.sh, puis de modifier les IP du proxy et du registre Docker upstreams dans les premières lignes en remplaçant par son IP privée sur le lan. hostname -I pour connaître son ip privée.

Il est évidemment possible de n'activer que l'une des 2 fonctionnalités (soit que le proxy http externe, soit que le docker registry externe) en commentant les lignes associées. D'autres modifications de la VM peuvent aussi être réalisées dans ce fichier...

Installation d'un proxy squid sur l'hôte

Pour installer un squid sur l'hôte :

  • apt install squid
  • Éditer /etc/squid/squid.conf :
    • Décommenter la ligne #http_access allow localnet (ATTENTION ! Il faut bien décommenter cette ligne existante, et non l'ajouter à la fin, sa place dans le fichier de conf est importante)
    • Ajouter à la fin :
cache_dir aufs /var/spool/squid 5000 14 256
maximum_object_size 4000 MB
http_port 3142

penser à redémarrer le squid: service squid restart

Installation d'un docker-registry sur l'hôte

Pour installer un docker-registry sur l'hôte :

  • apt install docker-registry
  • Éditer /etc/docker/registry/config.yml :
    • Enlever la section auth
    • Ajouter à la fin :
proxy:
  remoteurl: https://registry-1.docker.io

Configurer une IP pérenne

Si vous utilisez un ordinateur portable, votre adresse IP changera sûrement au grè de vos connexions à l'Internet. Dans ce cas il est préférable d'utiliser une adresse stable pour designer votre mandataire.

Il est par exemple possible d'assigner une seconde adresse à la carte loopback de votre hôte avec /sbin/ifconfig lo:0 192.168.128.1/24