Docker-säilöjen valvonta on välttämätöntä, jotta sovelluksesi pysyvät vakaina ja sujuvasti käynnissä. Docker-lokien avulla näet, mitä säilöissäsi tapahtuu, ja voit seurata suorituskykyä, tunnistaa virheitä ja tehdä vianmäärityksen nopeammin. Tässä oppaassa selitämme, kuinka Docker-lokit saadaan, ymmärretään ja miten niitä käytetään yleisten säilöongelmien tehokkaaseen korjaamiseen.
Sisällysluettelo
- Mitä ovat Docker-lokit
- Kuinka saada / tarkastella Docker-lokeja
- Yleiset Dockerin lokivaihtoehdot ja liput
- Tallenna Docker-lokit tiedostoon
- Näytä lokit Docker Composessa
- Vinkkejä Docker-lokien hallintaan
Mitä ovat Docker-lokit
Docker-lokit ovat tietueita kaikesta, mitä käynnissä olevassa Docker-säiliössä tapahtuu. Ne sisältävät sekä vakiotulosteen (stdout) että virheilmoitukset (stderr), ja niiden avulla voit selvittää, kuinka säilösi toimii ja onko siinä ongelmia.
Oletusarvoisesti Docker tallentaa nämä lokit JSON-tiedostoina isäntäjärjestelmään "/var/lib/docker/containers" -hakemistoon. Jokaisella säilöllä on oma lokitiedosto nimeltä "[container_id]-json.log". Voit avata nämä tiedostot suoraan tai käyttäädocker logs-komento nähdäksesi ne terminaalissa.
Nämä lokit sisältävät sovellusviestejä, varoituksia ja virheitä, jotka auttavat virheenkorjausongelmissa. Ne voivat sisältää myös järjestelmätietoja, kuten käynnistystapahtumia tai resurssien käyttötietoja.
Lokien hallintaan tehokkaasti Docker käyttää lokiohjaimia. Lokiohjain määrittää, missä ja miten lokit tallennetaan tai lähetetään. Oletusohjain, json-tiedosto, tallentaa lokit paikallisesti JSON-muodossa, mutta voit valita muita ohjaimia lähettämään lokit ulkoisiin järjestelmiin hallinnan ja analyysin helpottamiseksi.
Thedocker logskomennolla voit tarkastella lokeja käynnissä olevasta säilöstä, joka käyttää "json-tiedostoa" tai kirjattua lokiohjainta. Voit suorittaa sen seuraavasti:
docker logs [OPTIONS] CONTAINER_NAME_OR_IDKorvataCONTAINER_NAME_OR_IDsen säilön todellisen nimen tai tunnuksen kanssa, jonka haluat tarkistaa. Näet luettelon käynnissä olevista säilöistä käyttämällä tätä komentoa:
docker psTämä komento näyttää luettelon aktiivisista säilöistä sekä niiden tunnukset, nimet, tilan ja muut hyödylliset tiedot.
Yllä olevassa esimerkissä Docker käyttää kahta säilöä: openwebui ja ollama. Jos haluat tarkastella tietyn säilön lokeja, käytä sen nimeä. Suorita tämä komento esimerkiksi tarkistaaksesi openwebui-säilön lokit.
docker logs openwebui
Voit myös käyttää säilön tunnusta sen nimen sijaan tarkastellaksesi lokeja. Esimerkiksi:
docker logs 1f351684ae30
Yleiset Dockerin lokivaihtoehdot ja liput
Dockerin avulla voit käyttää erilaisia vaihtoehtoja Docker logs -komennon kanssa lokien näyttötavan ohjaamiseen. Tässä on joitain hyödyllisiä.
| Vaihtoehto | Kuvaus | Esimerkkikomento |
|---|---|---|
| – yksityiskohdat | Näyttää lisätiedot lokeissa. | telakointilokit – tiedot kontin_nimi |
| -seuraa, -f | Näyttää jatkuvasti uusia lokimerkintöjä reaaliajassa. | telakointilokit -f kontin_nimi |
| -koska | Näyttää lokit, jotka on luotu tietyn ajan tai keston jälkeen (esimerkiksi 2024-07-08T13:42:13Z tai 10m). | telakointilokit – 10 m asti kontin_nimi |
| -häntä, -n | Näyttää vain tietyn määrän rivejä lokien lopusta. | docker logs – tail 50 kontin_nimi |
| -aikaleimat, -t | Lisää aikaleimat jokaiselle lokiriville. | Docker lokit -t kontin_nimi |
| -kunnes | Näyttää lokit, jotka on luotu ennen tiettyä aikaa. | telakointilokit – 2024-07-08T14:00:00Z asti kontin_nimi |
Jos haluat esimerkiksi nähdä tietyn säilön 50 viimeisintä lokimerkintää, suoritadocker logskomennon kanssa--tailvaihtoehto.
docker logs --tail 50 openwebui
Vastaavasti voit käyttää muita vaihtoehtoja, kuten--followkatsoa lokeja livenä tai--sincesuodattaa lokit ajan mukaan tarpeidesi mukaan.
Tallenna Docker-lokit tiedostoon
Voit tallentaa Docker-lokit tiedostoon käyttämällä yksinkertaista uudelleenohjausoperaattoria tai sisäänrakennettuja komentoasetuksia. Esimerkiksi seuraava komento tallentaa Docker-lokit tiedostoon, jonka nimi on "container_logs.txt".
docker logs container_name > container_logs.txt
Voit avata tämän tiedoston myöhemmin millä tahansa tekstieditorilla (kuten Notepadilla, VS Codella tai nanolla) tarkastellaksesi tallennettuja lokeja.

Näytä lokit Docker Composessa
Voit helposti tarkastella lokeja Docker Composen hallinnoimista säilöistä käyttämällädocker compose logskomento. Jos esimerkiksi haluat nähdä kaikkien Compose-projektisi säilöjen lokit, suorita seuraava komento:
docker compose logsJos kuitenkin haluat lokit vain yhdestä palvelusta, mainitse sen nimi komennon jälkeen.
docker compose logs service_nameHuomautus:Jos käytät Dockerin vanhempaa versiota, komento saattaa olladocker-compose logs(yhdysviivalla). Molemmat toimivat samalla tavalla Docker-versiostasi riippuen.
Vinkkejä Docker-lokien hallintaan
Docker käyttää lokiohjaimia konttitulosteen kaappaamiseen ja tallentamiseen. Oletuksena se käyttää "json-file" -ohjainta, joka tallentaa lokit JSON-muodossa isäntäjärjestelmään. Voit vaihtaa muihin ohjaimiin lähettääksesi lokeja ulkoisiin palveluihin tai käyttää mukautettua ohjainta, jos tarvitset enemmän hallintaa.
Docker tukee kahta lokin toimitustapaa. Estotila lähettää lokit välittömästi, mutta se voi vaikuttaa hieman suorituskykyyn. Ei-estotila tallentaa lokit väliaikaisesti muistiin ennen niiden lähettämistä. Se vähentää viiveitä, mutta voi menettää lokit, jos muistipuskuri täyttyy.
AIHEUTTAA:New York lopettaa AI Rent -talttauksen tehokkaasti
Voit myös käsitellä kirjaamista sovelluksessasi joustavuuden lisäämiseksi. Koska säilön tiedot ovat kuitenkin väliaikaisia, on parempi tallentaa lokit pysyvään tallennustilaan tai välittää ne ulkoiseen lokinhallintapalveluun.
Docker-taltioiden käyttäminen on luotettava tapa pitää lokit turvassa. Volyymit tallentavat tiedot isäntäkoneelle ja pysyvät käytettävissä, vaikka kontti pysähtyy tai käynnistyy uudelleen. Ne sopivat paremmin pitkäaikaiseen varastointiin kuin sidontakiinnikkeisiin.
Toinen hyvä tapa on käyttää omaa hakkuukonttia. Se kerää ja hallitsee lokit useista konteista ja välittää ne keskitettyyn järjestelmään. Tämä asetus auttaa pitämään tärkeimmät sovellussäiliöt kevyinä ja helposti hallittavissa.
Päätös
Docker-lokit ovat välttämättömiä kontin suorituskyvyn seurantaan ja ongelmien nopeaan ratkaisemiseen. Voit käyttää komentoja, kutendocker logsja noudata parhaita käytäntöjä, kuten jatkuvaa tallennusta ja asianmukaisia lokiohjaimia, varmistaaksesi luotettavan lokinhallinnan. Järjestetyllä lokiasetuksella voit pitää säilösi vakaina ja sovelluksesi toimivat sujuvasti. Voit parantaa lokien seurantaa ja analysointia käyttämällä työkaluja, kuten ELK Stack, Fluentd, Prometheus ja Grafana.














