Hoe repareer ik Docker geen ruimte meer op het apparaat?

How Do I Fix Docker No Space Left Device



Om opslagstuurprogramma's met succes te gebruiken, moet u eerst begrijpen hoe Docker afbeeldingen maakt en opslaat en hoe containers deze afbeeldingen gebruiken. U kunt deze gegevens gebruiken om weloverwogen beslissingen te nemen over het verbeteren van gegevens uit uw toepassingen en tegelijkertijd prestatieproblemen te voorkomen. Met opslagstuurprogramma's kunt u gegevens naar de beschrijfbare laag van uw container schrijven. Nadat de container is vernietigd, worden de bestanden niet opgeslagen en zijn de lees- en schrijfsnelheden lager dan de prestaties van de native bestandstoepassing. Misschien wilt u de harde schijf van uw systeem opschonen om de Docker-image te downloaden en uit te voeren. Als u echter niet genoeg ruimte op uw harde schijf heeft, kunt u de foutmelding krijgen: geen ruimte meer op het apparaat. Wanneer uw server verstopt is met afvalbestanden, kan dit ertoe leiden dat de pc langzamer gaat werken. U moet een bepaalde hoeveelheid ruimte vrijmaken om het te repareren. De Dot cloud container-engine vereist relatief eenvoudige scripting om de opslag te wissen. Dit probleem geeft meestal aan dat Docker bijna geen ruimte meer heeft. /var/lib/docker is waar het zijn gegevens opslaat. Die map moet voldoende vrije ruimte hebben op het bestandssysteem waarop deze is gemount. In deze zelfstudie leert u verschillende methoden om Docker te repareren zonder ruimte op het apparaat.

Vereisten

Om ervoor te zorgen dat Docker geen ruimte meer op het apparaat heeft, moet u het Ubuntu 20.04 Linux-systeem en de docker-installatie erin gebruiken. Als Docker niet is geïnstalleerd, kunt u dit doen met behulp van de onderstaande opdracht in de terminal







$sudogeschiktinstallerendocker.io

Methode om Docker te repareren, geen ruimte meer op het apparaat

U moet inloggen via sudo user en de opdrachtregelterminal openen door deze aan te vinken in het toepassingsgebied van uw besturingssysteem of door de sneltoets Ctrl+Alt+T te gebruiken. Volg na het openen al deze methoden die in dit artikel worden beschreven.



Methode 1: Docker-systeem snoeien

De opdracht 'docker system prune' wordt gebruikt om ongebruikte objecten of gegevens, inclusief afbeeldingen, containers, volumes en netwerken, te verwijderen of te verwijderen. Deze objecten worden niet gewist tenzij we ze bewust verwijderen; toch moeten we in docker 17.06.1 of hoger de mogelijkheid '–volumes' vereisen om volumes te verwijderen. Het elimineert zowel bungelende als niet-gerefereerde afbeeldingen; echter alleen standaard worden bungelende afbeeldingen verwijderd. De 'docker system prune' kan alleen worden gebruikt met een client en daemon API-versie van 1.25 of hoger. Voer nu het vermelde commando uit:



$sudodocker-systeemgedroogde pruim





U moet uw sudo-gebruikerswachtwoord opgeven voor een succesvolle uitvoering. Na uitvoering krijgt u de volgende waarschuwing, zoals weergegeven in de bijgevoegde afbeelding. U moet y invoeren om door te gaan met het proces. Wanneer we het 'docker system prune-commando implementeren, stuurt het een API-verzoek naar de Docker-daemon, die zoekt naar alle ongebruikte items op de host en deze uit het systeem verwijdert. Omdat eerdere versies van Docker alle objecten, inclusief volumes, verwijderden, is de optie ‘–volumes’ toegevoegd.

Methode 2: bungelende afbeeldingen verwijderen

Hiervoor kan het volume-commando in Docker worden gebruikt. Omdat hierdoor elke map of map in /var/lib/docker/volumes die geen volume is, wordt gewist, moet u ervoor zorgen dat daar geen belangrijke documenten worden opgeslagen. Bij het maken van een Docker-afbeelding zijn er meestal meerdere lagen met afbeeldingen. Lagen die niet verwijzen naar een getagde afbeelding worden bungelende afbeeldingen genoemd. Bungelende afbeeldingen nemen opslagruimte in beslag, maar doen niets. Gebruik de opdracht om een ​​lijst met alle volumes te bekijken:



$sudodocker-volumels

Gebruik de volgende opdracht om een ​​lijst van alle bungelende volumes te krijgen:

$sudodocker-volumels–qfbungelend=waar

U moet uw sudo-gebruikerswachtwoord opgeven voor een succesvolle uitvoering.

Methode 3: Verweesde volumes verwijderen

Om aan de slag te gaan, moet u alle verweesde volumes in Docker wissen. Voer nu de volgende opdracht uit om alle zwevende volumes te verwijderen:

$docker-volumerm

Conclusie:

In deze handleiding hebben we een paar methoden besproken om de Docker te elimineren, geen ruimte meer over op een apparaatfout. Nu geloof ik dat je dit gemakkelijk aan je einde kunt aanpakken door deze tutorial te volgen.