50% rabat alle planer, begrænset periode. Fra kun $2.48/mo
9 min tilbage
Udviklerværktøjer og DevOps

Nem guide til Docker Compose Logs: Sådan kontrolleres og administreres

Ada Lovegood By Ada Lovegood 9 min læsning Opdateret 23. februar 2025
docker logs

Vil du vide, hvad Docker-apps udfører bag kulisserne? Lad os lære mere om det hemmelige vindue, kendt som logs, ind i dine containere, som viser ethvert trin, de tager. Logs er enormt nyttige til fejlfinding. Men før vi starter, lad os tage et hurtigt kig på, hvad Docker og Docker Compose er.

Docker lader dig pakke dine applikationer ind i små containere og køre dem på de fleste operativsystemer uden afhængigheder. Det er som at sætte dine apps i små bokse kaldet Containers, som kan køre på samme måde overalt. At kende til containere er en vigtig forudsætning for at lære om Docker Compose. Jeg anbefaler dig derfor først at læse vores blog om fordelene ved containerisering.

Docker Compose kommer med Docker og forenkler udviklingen af flere containeriserede applikationer ved at forbinde deres services, netværk og lagerplads. Docker container logs og Docker Compose logging hjælper udviklere med at se, hvad hver container gør.

Er du nysgerrig på Docker Compose Logs? Du er på det rigtige sted. Denne blog forklarer det grundlæggende i Docker Compose logs og dækker mere avancerede detaljer. Lær hvordan du får mest ud af Docker Compose til dine projekter.

Vigtigheden af Docker Compose Logs

Forestil dig at en udvikler starter en app med Docker men springer opsætningen af Docker logs over. I starten ser alt godt ud. Men snart opdager brugere fejl, og appen bliver langsommere. Uden Docker logs kan udvikler ikke se, hvad der gik galt inde i Docker containerene. Docker Compose logs er som en detaljeret optegnelse af disse containere. De registrerer alle detaljer om hvad der sker, hvilket er vigtig for at finde og rette problemer senere.

Som udvikler eller systemadministrator skal du forstå hvad der sker inde i og mellem applikationer med flere services. Det er her Docker Compose logs fungerer som et praktisk værktøj. Så hvorfor er disse logs nødvendige?

  • Fejlfinding og fejlsøgning

Kontroller docker logs når en applikation ikke kører korrekt eller støder på fejl. Docker logs er de første ressourcer du kan se på for at spore problemet. Ved at undersøge docker logs kan udvikler finde årsagen til problemet, hvad enten det er en bug i koden, en forkert konfiguration eller ressourcemangel.

  • Overvågning af applikationens tilstand

Regelmæssig overvågning af applikationslogs hjælper med at forstå den generelle tilstand af services. Logs kan afsløre tidlige advarselstegn, såsom gentagne fejl og langsomme svar. At opdage disse mønstre tidligt kan forhindre potentielle problemer senere.

  • Revision og overholdelse

For applikationer som skal følge specifikke standarder er docker logs det første bevis på om applikationen overholder retningslinjer. Disse logs spiller også en vigtig rolle i overvågningen af autoriserede eller uautoriserede aktiviteter.

  • Optimering

Logs er værdifulde ressourcer til optimering af software ved at give performancedata. For eksempel kan udvikler identificere langsomtkørende forespørgsler, ineffektiv kodesti eller underudnyttede ressourcer.

Oprettelse af en Docker opskrift: Udrulning af en webserver

I dette afsnit vil vi gennemgå oprettelsen af en Docker opskrift sammen. Vi skal først bygge noget for at starte vores rejse med Docker Compose logs. Lad os implementere en webserver til dette formål. For at oprette en Dockerfile skal du blot køre nano Dockerfile i den ønskede mappe på din VPS med følgende indhold og gem det derefter:

 

FROM nginx:alpine
RUN rm /usr/share/nginx/html/index.html
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]

Så hvad gør hver linje i denne kode?

  • Vi starter med en letvægts base, nginx:alpine.
  • Derefter fjerner vi standardvelkomstsiden fra Nginx.
  • Så sikrer vi, at webserveren lytter på port 80.
  • Til sidst kører vi Nginx serveren med CMD.

Nu er vores Dockerfile klar, vi går videre til næste trin, som er oprettelsen af Docker Compose filen. Her er strukturen af docker-compose.yml fil:

version: '3.8'
services:
web:
build: .
ports:
- "8080:80"
volumes:
- ./index.html:/usr/share/nginx/html/index.html

Lad os opdele det for fuldt ud at forstå hver del:

  • Vi bruger version 3.8.
  • På næste linje navngiver vi vores service ""web“.
  • Derefter instruerer vi Docker til at bygge vores webserver fra den aktuelle mappe.
  • Vi forbinder port 8080 på din host til port 80 i din container for at aktivere webserveren til at etablere en forbindelse.
  • Til sidst mapper volumnes konfiguration index.html fra hostdisken til containeren. Senere kan du oprette en index.html fil med indhold du ønsker og placere den hvor Dockerfile og docker-compose.yml filer findes.

Nu er det tid til at køre vores Docker container med Docker Compose. Simpelt hen kører vi docker-compose up.

kør Docker container med Docker Compose

Når du kører docker-compose up kommandoen, downloader Docker de nødvendige billeder fra internettet og konfigurerer dem efter anvisningerne i vores konfigurationsfiler.

For at kontrollere, om webserveren kører, åbner du din webbrowser, indtaster din VPS IP-adresse og anmoder om adgang til port 8080.

dockeriseret webside

Som en sidenote kan du bruge docker-compose up -d for at køre containeren i baggrunden.

Adgang til logs med Docker Compose

Nu er vores webserver klar og kørende. Den genererer allerede logs og gemmer disse oplysninger til senere brug. Adgang til dine docker compose logs er vigtig for fejlfinding og overvågning. Men hvordan læser vi disse logs? Det er her docker-compose logs kommer ind i billedet. Sørg for, at du er i den mappe, hvor konfigurationen ligger, og kør kommandoen.

Adgang til logs med Docker Compose

Nogle gange vil du måske se logs i realtid, mens de genereres. Tilføj blot -f til slutningen af den forrige kommando og kør docker-compose logs -f.

Adgang til logs med Docker Compose

Nogle Docker-baserede applikationer giver dig muligvis ikke timestamps i deres logs. Derfor kan du bruge docker-compose logs -t for at tilføje et tidsstempel for hver linje i loggen.

Adgang til logs med Docker Compose

Docker logs kan også vise de seneste poster. For at gøre dette skal du bruge docker-compose logs --tail 10 for at se de seneste 10 logposter. Docker Compose logs tail, og docker logs tail er særlig nyttig, når du hurtigt vil kontrollere nylig aktivitet uden at skulle scrolle gennem hele loghistorikken.

adgang til logs med docker compose

Hovedformålet med at bruge Docker Compose er at skabe multi-container applikationer. Derfor kan du have brug for at læse logs for en specifik tjeneste. For at gøre det skal du bruge docker-compose logs -f SERVICEI appreciate you reaching out, but the text you've provided appears to be incomplete: ", remembering to replace" This seems like a fragment rather than a complete UI label or phrase. Could you please provide the full text you'd like me to translate to Danish? SERVICE med dit faktiske tjenestenavn.

adgang til logs med docker

Docker-registrering

Docker økosystemet kan blive mere komplekst for konvergerede applikationer, især i større miljøer. Som vi allerede ved, genererer hver container logs. En mekanisme kendt som Logging Driver er derfor ansvarlig for at modtage, levere og gemme logs. Som standard bruger Docker JSON filer til Logging Driver, men det understøtter også forskellige andre drivere, hver med deres fordele og ulemper.

Alle er enige om, at logs er afgørende på forskellige områder, herunder fejlfinding og forbedring af systemperformance. Nedenfor dækker vi to af de vigtigste aspekter ved brug af container logs:

  • Overvågning: Logs har til formål at overvåge dine applikationer. De viser generelt det overordnede tilstand for dine containeriserede applikationer.
  • Fejlfinding: Hvis der opstår problemer, hjælper logs dig med at opdage applikationsfejl.

Da docker logs og docker compose logs genereres løbende, kan de fylde hele VPS lagerplads. Derfor skal du have en strategi for at styre diskplads, kaldet en Log Rotation Policy. For at oprette og bruge denne politik, går du tilbage til docker-compose.yml filen og åbner den. Tilføj derefter en logging-sektion med konfigurationen herunder:

version: '3.8'
services:
web:
build: .
ports:
- "8080:80"
volumes:
- ./index.htm:/usr/share/nginx/html/index.htm
logging:
driver: json-file
options:
max-size: "200k"
max-file: "10"

Du kan konstant justere max-size og max-file efter dine behov.

Docker Logs leveringsmodeller

Ingeniører kan vælge en anden loggingmodel i mere avancerede miljøer end standard JSON drivers, såsom Syslog, fluentd og andre. Det er dog vigtig at huske, at JSON-file driveren er velegnet til de fleste loggingscenarier, og der er muligvis ikke behov for at afvige fra standardmodus.

Afhængigt af din applikations arkitektur eller organisatoriske krav, kan du blive nødt til at bruge centrale loggingløsninger kendt som Log Aggregators. Disse tjenester, herunder Elasticsearch, Logstash, Kibana osv., er designet til at modtage logs fra forskellige kilder og konsolidere, gemme og analysere dem på et enkelt centralt sted.

Omvendt bør du gemme dine logs ved hjælp af mere omkostningseffektive lagerløsninger. Overvej scenariet, hvor din VPS bruger højhastighedslagring og dyr lagring; det er muligvis ikke økonomisk at bruge sådanne præmiumressourcer til at gemme logs, som du muligvis kun har brug for til fremtidig reference.

Der findes adskillige loggingmodeller, hver med deres fordele og ulemper. Det er vigtig at evaluere hver model omhyggeligt og vælge en baseret på dine specifikke behov.

Linux VPS Hosting

Få dig en økonomi- eller premium Linux VPS til hosting af dit websted eller remote desktop til den billigste pris derude. VPS kører på Linux KVM for øget effektivitet og arbejder på kraftigt hardware med NVMe SSD-lagerplads for øget hastighed.

Læs mere

Konklusion

At forstå Docker Compose logs er afgørende. De hjælper med at styre og fejlfinde dine Docker applikationer effektivt. At lære at få adgang til og overvåge disse logs forbedrer problemløsning og øger din apps ydeevne og sikkerhed. Uanset om du udvikler eller administrerer systemer, er brug af Docker Compose logs vigtig. De sikrer, at din containerstyring er effektiv.

Ofte stillede spørgsmål

Hvordan kan jeg filtrere Docker Compose logs efter tid?

Docker Compose tilbyder ikke en direkte metode til at filtrere logs efter tid. Du kan dog filtrere logs ved at sende dem gennem grep til mønstergenkendelse. For eksempel kan du bruge: docker-compose logs | grep "2023-04-06", og erstatte "2023-04-06" med den specifikke dato eller tidsmønster, du søger efter.

Hvordan stopper jeg containere startet med Docker Compose?

Gå til den mappe, der indeholder docker-compose.yml filen, og kør kommandoen docker-compose down.

Hvordan fjerner jeg logfiler manuelt?

I stedet for at konfigurere log rotation i din docker-compose.yml fil, kan du manuelt fjerne Docker JSON logfiler fra /var/lib/docker/containers/<container_id>/. Før du gør det, bør du identificere Docker container ID med docker ps -a.

Kan du følge Docker logs? 

Ja, det kan du. For at gøre det skal du bruge docker logs kommandoen sammen med -f eller –follow mulighed. Dette vil vise Docker logs for dig.

Del

Mere fra bloggen

Læs videre.

En metallisk beholder omsluttet af en glødende neon-cyan wireframe-kuppel, med artiklen titel og Cloudzy-logo på en dyb blå baggrund.
Udviklerværktøjer og DevOps

De vigtigste Docker-sikkerhedsfejl at undgå i 2026

Du kan køre Docker i produktion i måneder uden problemer. Containere starter, apps svarer, intet går i stykker. Så dukker der en eksponeret port eller en fejlkonfigureret tilladelse op og

Rexa CyrusRexa Cyrus 15 min læsning
En 3D glødende blå kubisk struktur, der repræsenterer Docker-containere, sammen med teksten 'Portainer mod Yacht: Hvilken Docker UI skal du vælge?' og Cloudzy-logoet.
Udviklerværktøjer og DevOps

Portainer vs Yacht: Hvilken Docker UI bør du vælge i 2026?

At håndtere Docker containere via CLI virker fint til enkle opsætninger, men skaleres dårligt. Når antallet af containere vokser, bliver manuel sporing af tilstande, logs og opdateringer fejlpropten.

Rexa CyrusRexa Cyrus 13 min læsning
Continuous Integration-værktøjer
Udviklerværktøjer og DevOps

De bedste CI/CD-værktøjer til at optimere dine DevOps-workflows i 2026

Softwareudviklingens landskab udvikler sig hurtigere end nogensinde før. Og hvis du ikke vil blive efterladt, bør du anvende DevOps-metoder og Agile

Ada LovegoodAda Lovegood 11 min læsning

Klar til at implementere? Fra $2,48/mdr.

Uafhængig cloud siden 2008. AMD EPYC, NVMe, 40 Gbps. 14-dages pengene-tilbage-garanti.