Bind mountit ja tmpfs-mountit
Tutustukaa bind mountien käyttöön isäntäkoneen tiedostojen käsittelyssä ja tmpfs-mountien käyttöön väliaikaisten tietojen tallennuksessa.
Bind mountit ja tmpfs-mountit on ilmainen DevOps-bootcamp-oppitunti CoddyKitissä. Tämä on oppitunti 3/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu DevOps-bootcamp-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. DevOps-bootcamp-kurssilla on yhteensä 4 oppituntia.
Datan tallennus volumien lisäksi
Edellisillä oppitunneilla opimme Docker-volumeista pysyvän datan tallentamiseen. Entä jos sinun on jaettava tiedostoja suoraan isäntäkoneeltasi tai tallennettava väliaikaista dataa, jonka ei tarvitse säilyä?
Tässä oppitunnissa esitellään kaksi muuta tapaa hallita dataa: bind mount -liitokset ja tmpfs mount -liitokset. Ne tarjoavat joustavuutta erilaisiin käyttötapauksiin.

Mitä bind mount -liitokset ovat?
Bind mount -liitoksen avulla voit liittää tiedoston tai hakemiston isäntäkoneelta konttiin. Tämä luo suoran yhteyden, joten toisella puolella tehdyt muutokset näkyvät heti myös toisella puolella.
- Isäntäkoneen polku: Sijainti tietokoneellasi.
- Kontin polku: Sijainti kontin sisällä.
- Sopii erinomaisesti kehitykseen, määritysten jakamiseen ja isäntäkoneen tiedostojen käyttämiseen.
Bind mount -liitokset käytännössä
Katsotaan bind mount -liitosta käytännössä. Tämä komento liittää nykyisen hakemistosi (jonka ilmaisee Linuxissa/macOS:ssä $(pwd) tai Windowsin CMD:ssä %cd%) kontin hakemistoon /app.
Huomautus: Luo ennen komennon suorittamista nykyiseen hakemistoosi tiedosto nimeltä hello.txt ja kirjoita siihen esimerkiksi teksti "Hello from host!".
docker run --rm -it \
-v "$(pwd):/app" \
alpine:latest sh -c "ls /app && cat /app/hello.txt"Vain luku -tilassa olevat bind mount -liitokset
Joskus haluat jakaa dataa isäntäkoneelta mutta estää konttia tekemästä siihen muutoksia. Tällöin vain luku -tilassa olevat bind mount -liitokset ovat hyödyllisiä.
Voit määrittää liitospolun loppuun merkinnän :ro tai käyttää --mount-valitsimen kanssa asetusta readonly.
docker run --rm -it \
-v "$(pwd):/app:ro" \
alpine:latest sh -c "touch /app/new_file.txt || echo 'Permission denied!'"Vain luku -tilassa olevan tulosteen ymmärtäminen
Kun suoritit edellisen komennon, sinun olisi pitänyt nähdä viesti "Permission denied!". Tämä vahvistaa, ettei kontti voinut luoda uutta tiedostoa hakemistoon /app, koska se oli liitetty vain luku -tilassa.
Tämä on hyvä suojausominaisuus, joka suojaa isäntäkoneen tiedostoja kontin vahingossa tekemiltä tai haitallisilta muutoksilta.
Mitä tmpfs mount -liitokset ovat?
tmpfs mount -liitos on väliaikainen tiedostojärjestelmä, joka tallennetaan kokonaan isäntäkoneen muistiin (RAM-muistiin). Tämä tarkoittaa, että tmpfs mount -liitokseen kirjoitettu data ei säily.
- Data menetetään, kun kontti pysähtyy.
- Levypohjaista tallennusta nopeampi I/O.
- Sopii arkaluonteiselle datalle tai väliaikaisille tiedostoille.
tmpfs mount -liitokset käytännössä
Luodaan kontti, jossa on tmpfs-liitos. Kirjoitamme siihen tiedoston ja poistumme sitten kontista. Kun käynnistät uuden kontin, tiedosto on kadonnut.
--tmpfs-valitsin määrittää kontin sisäisen liitoskohdan.
docker run --rm -it \
--tmpfs /app/temp_data \
alpine:latest sh -c "echo 'Ephemeral data' > /app/temp_data/my_temp_file.txt && ls /app/temp_data"tmpfs:n väliaikaisuuden todentaminen
Edellisen komennon suorittamisen jälkeen näit tiedoston my_temp_file.txt luettelossa. Suorita nyt tämä komento käynnistääksesi *uuden* kontin, jossa on *sama* tmpfs-liitosmääritys.
Huomaat, ettei tiedostoa my_temp_file.txt enää ole. Tämä vahvistaa, että tmpfs-data on todella väliaikaista ja sidoksissa kontin elinkaareen.
docker run --rm -it \
--tmpfs /app/temp_data \
alpine:latest ls /app/temp_dataBind mount - ja tmpfs mount -liitokset
Milloin kumpaakin kannattaa käyttää?
- Bind mount -liitokset: Isäntäkoneen tiedostojen, kuten määritysten ja lähdekoodin, jakamiseen konttien kanssa, kun tarvitaan säilyvyyttä ja suoraa pääsyä isäntäkoneelta.
- tmpfs mount -liitokset: Väliaikaiselle datalle, jonka ei tarvitse säilyä ja joka vaatii hyvää suorituskykyä tai jonka ei haluta säilyvän kontin uudelleenkäynnistyksen jälkeen, kuten välimuisteille ja arkaluonteiselle ajonaikaiselle datalle.
Molemmat täydentävät Docker-volumeja ja tarjoavat kattavan valikoiman datan hallintavaihtoehtoja.
Nopea tarkistus: liitostyypit
Mitkä seuraavista väitteistä pitävät paikkansa bind mount- ja tmpfs mount -liitoksista?
Kertaus: datan hallintatyökalut
Hienosti tehty! Olet laajentanut Docker-datan hallintatyökalujasi.
- Bind mount -liitokset yhdistävät isäntäkoneen tiedostot ja hakemistot kontteihin, joten ne sopivat erinomaisesti kehitykseen ja määritysten jakamiseen.
- tmpfs mount -liitokset tarjoavat väliaikaista, muistissa olevaa tallennustilaa, joka sopii täydellisesti datalle, jonka ei tarvitse säilyä, tai arkaluonteiselle datalle.
Näiden vaihtoehtojen ymmärtäminen auttaa valitsemaan oikean tallennusratkaisun kontitetuille sovelluksille.
Opi DevOps-bootcamp tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 142
- Oppitunnit
- 568
Usein kysytyt kysymykset
Onko oppitunti ”Bind mountit ja tmpfs-mountit” ilmainen?
Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa DevOps-bootcamp-oppimispolun 3 oppituntia, myös oppitunnin “Bind mountit ja tmpfs-mountit”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. DevOps-bootcamp-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”Bind mountit ja tmpfs-mountit”?
Tutustukaa bind mountien käyttöön isäntäkoneen tiedostojen käsittelyssä ja tmpfs-mountien käyttöön väliaikaisten tietojen tallennuksessa. Harjoittelet DevOps-bootcamp-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni DevOps-bootcamp-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin DevOps-bootcamp-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 3/4.
Kuinka kauan ”Bind mountit ja tmpfs-mountit”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä DevOps-bootcamp-oppitunnilla?
Kyllä. Jokainen DevOps-bootcamp-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- Säilöverkkojen perusteet
- Docker-volyymit pysyvään tallennukseen
- Bind mountit ja tmpfs-mountit
- Mukautetut bridge-verkot ja palveluiden etsintä