Logs van Docker-containers bekijken

WI
Wilan
5 min. leestijd
check log docker

Bij het uitvoeren van applicaties met Docker is een van de belangrijke dingen die we moeten weten, hoe we containerlogs kunnen bekijken. Deze logs zijn erg nuttig om te controleren of de applicatie normaal draait, of er fouten zijn, of dat de service in de container succesvol actief is.

In dit voorbeeld gebruiken we geen specifieke containernaam. Gebruik dus een algemene indeling zoals:

naam-container

Of als je het gemakkelijker wilt begrijpen, stel dat de containernaam is:

naam-project

Later vervang je naam-project door de naam van je eigen Docker-container.

Om de naam van actieve containers te controleren, gebruik je:

docker ps

Kijk naar het gedeelte NAMES. Dat is de containernaam die je kunt gebruiken voor de docker logs-opdracht.

1. Containerlogs bekijken

Om de logs van een container te bekijken, gebruik je de opdracht:

docker logs naam-project

Vervang naam-project door de naam van je container.

Voorbeeld van algemene indeling:

docker logs naam-container

Deze opdracht toont de geregistreerde logs van de container. Deze logs bevatten meestal informatie zoals het opstartproces van de applicatie, fouten, waarschuwingen of berichten dat de server actief is.

2. Logs live bekijken

Als je logs in realtime of continu wilt bekijken, gebruik dan de toevoeging -f.

docker logs -f naam-project

De optie -f staat voor follow. De terminal blijft dus de nieuwste logs weergeven zolang de container actief is.

Dit is erg handig tijdens het debuggen. Bijvoorbeeld na een herstart van de container, het updaten van de applicatie, of om te zien of er nieuwe fouten optreden wanneer de website wordt bezocht.

Om de live modus te verlaten, druk je op:

CTRL + C

Dit stopt alleen de weergave van logs in de terminal, niet de container.

3. Alleen de laatste logs bekijken

Soms zijn containerlogs te lang, vooral als de applicatie al lang draait. Als je alleen de laatste paar regels wilt zien, gebruik dan --tail.

docker logs --tail=100 naam-project

Bovenstaande opdracht toont de laatste 100 regels van de containerlogs.

Voor de laatste 50 regels:

docker logs --tail=50 naam-project

Als je de laatste logs wilt zien terwijl je nieuwe logs blijft volgen, kun je --tail en -f combineren.

docker logs --tail=100 -f naam-project

Met deze opdracht toont Docker de laatste 100 regels en blijft het vervolgens live nieuwe logs weergeven.

4. Logs bekijken op basis van tijd

Docker kan ook logs weergeven op basis van een bepaalde tijd. Bijvoorbeeld alleen logs van de laatste 10 minuten:

docker logs --since=10m naam-project

Of van het laatste uur:

docker logs --since=1h naam-project

Om logs tot een bepaalde tijd te bekijken, gebruik je:

docker logs --until=10m naam-project

Deze functie is handig als je je wilt concentreren op fouten die net zijn opgetreden, zonder de logs vanaf het begin te lezen.

5. In de container gaan

Naast het bekijken van logs van buitenaf, moet je soms ook de container in om bestanden, mappen te controleren of specifieke opdrachten uit te voeren.

Gebruik de opdracht:

docker exec -it naam-project sh

Meestal gebruiken lichtgewicht Linux-gebaseerde containers sh.

Als je Docker-image bash ondersteunt, kun je ook gebruiken:

docker exec -it naam-project bash

Eenmaal in de container kun je de huidige map controleren met:

pwd

En de lijst met bestanden en mappen bekijken:

ls

Voor meer details:

ls -la

6. Applicatie vanuit de container controleren

Nadat je de container bent ingegaan, kun je controleren of de applicatie draait door localhost te benaderen op de poort die de applicatie gebruikt.

Algemene indeling:

wget -qO- http://localhost:POORT

Vervang POORT door de interne poort van de applicatie in de container.

Voorbeeld:

wget -qO- http://localhost:8080

Of als curl beschikbaar is in de container, gebruik dan:

curl http://localhost:POORT

Voorbeeld:

curl http://localhost:8080

Als de applicatie normaal draait, krijg je meestal een response zoals HTML, JSON of een bepaalde tekst van de applicatie.

7. Applicatie vanaf VPS of host controleren

Naast vanuit de container kun je de applicatie ook direct vanaf de VPS of hostserver controleren.

Algemene indeling:

curl http://localhost:POORT

Vervang POORT door de poort die geopend is op de VPS of de Docker-poortmapping.

Voorbeeld:

curl http://localhost:8080

Als je Docker gebruikt, zorg er dan voor dat de containerpoort is gemapt naar de hostpoort. Dit kun je controleren met:

docker ps

Dan zie je het gedeelte PORTS, bijvoorbeeld:

0.0.0.0:8080->8080/tcp

Dat betekent dat poort 8080 op de VPS is doorgestuurd naar poort 8080 in de container.

8. Containernaam controleren

Als je niet zeker weet wat de containernaam is, voer dan uit:

docker ps

Deze opdracht toont een lijst met actieve containers.

Om alle containers te zien, inclusief gestopte:

docker ps -a

Je kunt dan het gedeelte NAMES bekijken en die naam gebruiken voor de docker logs-opdracht.

Voorbeeld:

docker logs naam-container

9. Voorbeeld van een eenvoudige debug-workflow

Meestal, als een Docker-applicatie problemen heeft, begin je met het controleren van de container.

Controleer eerst of de container nog draait:

docker ps

Bekijk dan de laatste logs:

docker logs --tail=100 naam-project

Voor realtime monitoring:

docker logs -f naam-project

Als je de container in moet:

docker exec -it naam-project sh

Controleer daarna de applicatiemap:

pwd
ls -la

Controleer of de applicatie reageert op de interne poort:

wget -qO- http://localhost:POORT

Of:

curl http://localhost:POORT

Conclusie

Om Docker-containerlogs te bekijken, is de meest basale opdracht:

docker logs naam-project

Voor live logs:

docker logs -f naam-project

Voor alleen de laatste logs:

docker logs --tail=100 naam-project

En om de container in te gaan:

docker exec -it naam-project sh

Met deze eenvoudige opdrachten kun je de status van de applicatie in Docker controleren, fouten zoeken, processen bekijken en ervoor zorgen dat de service in de container actief is.

W

Geschreven door

Wilan

Vaste bijdrager van Bali Island Tekno die actief kennis deelt over technologie, programmeren en de wereld van software-engineering.

Terug naar Home Bijgewerkt op: 28 mei 2026