GitLab via Docker neemt te veel ruimte in beslag

Marco den Teuling
0

Sinds enkele maanden gebruik ik GitLab. Ik heb het als Docker-container geïnstalleerd en houd het goed bij. Via de CI/CD-processen maak ik containerimages die GitLab via het geïntegreerde register verwerkt. Inmiddels neemt dit ongeveer 80 GB ruimte in beslag, terwijl de nieuwe images juist veel minder ruimte zouden moeten innemen. Hoe kom ik van images af die ik niet meer nodig heb?

Met de opruimfunctie van GitLab zelf, die je in zo’n geval in de GitLab-container zou kunnen uitvoeren als gitlab-ctl registry-garbagecollect, werkt dat naar onze ervaring niet. Een officiële tool voor het opruimen van overtollige dingen in een GitLab-register bestaat er op dit moment niet. Wat bij ons echter wel werkte, was dockerdistribution-pruner, een opruimhulp die op GitLab werd gehost.

Het uitvoerbare bestand van het programma, dat in Go is geschreven, zit ietwat verstopt: als je de projectpagina opent, klik je in de zijbalk van GitLab op CI/CD en dan rechtsboven aan het eind van de regel op het pictogram van een wolk met een pijl (‘Download compile arti­facts’). Het zip-bestand dat je dan downloadt bevat het uitvoerbare Go-programma voor amd64.

Kopieer het programma naar je GitLab-container (met docker cp) en voer het daar uit met de volgende regel:

docker-distribution-pruner -config= /var/opt/gitlab/registry/config.yml

Het pad geldt voor standaard Docker-GitLab installaties (via Omnibus). Je hoeft niet bang te zijn iets kwijt te raken, het commando verwijdert in eerste instantie niets. Je start er alleen een inventarisatie van je register mee, die enkele minuten kan duren.

Daarna laat het programma weten hoeveel ruimte het in principe kan opruimen. Als je het opnieuw start met de optie -delete, dan worden de overbodige bestanden in je GitHub-register verwijderd. Standaard worden die dan naar de back-upmap docker_backup verplaatst in /var­/opt/gitlab/gitlab-rails/shared/registry/.

Ten slotte nog dit: de makers van het programma waarschuwen ervoor om het te gebruiken. Wij hebben er echter goede ervaringen mee opgedaan. Gebruik op eigen risico.

Lees meer over Docker in c't, bijvoorbeeld in c't 05/2024

Meer over

Software

Deel dit artikel

Marco den Teuling
Marco den TeulingHad als eerste eigen computer ooit een 16-bit systeem, waar van de 48 kilobyte toch echt niet ‘genoeg voor iedereen’ was. Sleutelt graag aan pc’s, van de hardware tot het uitpluizen van de BIOS-instellingen. Vindt ‘Software as a Service’ een onbedoeld ironische naamgeving.

Lees ook

Windows microfoon volume verandert automatisch? Zo los je dit op!

Het kan behoorlijk frustrerend zijn wanneer het microfoonvolume automatisch verandert in zowel Windows 10 en Windows 11. In dit artikel zullen we twee...

Waar moet je op letten bij het kopen van een ssd?

Op dit moment zijn ssd's zeer betaalbaar, met bepaalde exemplaren van 2 terabyte die minder dan 75 euro kosten. Ondanks de vele goede deals is het bel...

0 Praat mee
avatar
  Abonneer  
Laat het mij weten wanneer er