Docker: Tūriai

Kaip išsaugoti savo konteinerių duomenis naudojant Docker tūrius

👋 Sveiki atvykę į Stackhero dokumentaciją!

Stackhero siūlo paruoštą naudoti Docker cloud CaaS (Containers as a Service) sprendimą, kuris suteikia daugybę privalumų, įskaitant:

  • Lengvai diekite savo konteinerius į gamybą su paprastu docker-compose up.
  • Pritaikomas domeno vardas su HTTPS apsauga (pavyzdžiui, https://api.jusu-imone.com, https://www.jusu-imone.com, https://backoffice.jusu-imone.com).
  • Optimali veikla ir tvirta apsauga naudojant privačią ir dedikuotą VM.
  • Paprasti atnaujinimai vienu paspaudimu.

Taupykite laiką ir supaprastinkite savo gyvenimą: tereikia 5 minučių išbandyti Stackhero Docker CaaS cloud hosting sprendimą ir diegti savo konteinerius į gamybą!

Pagal dizainą, Docker konteineriai yra laikini. Tai reiškia, kad visi duomenys, saugomi tiesiogiai juose, bus prarasti, kai konteineris bus pašalintas arba pakeistas kita instancija. Norint užtikrinti duomenų išsaugojimą, rekomenduojama naudoti Docker tūrius.

Nenaudokite bind mounts Stackhero. Visada rinkitės Docker tūrius, kad išvengtumėte duomenų praradimo.

Bind mounts apima katalogo iš Stackhero host VM susiejimą su konteineriu. Tačiau, jei pasikliaujate bind mounts, atnaujinant savo Stackhero for Docker instanciją, prarasite visus tokiu būdu saugomus duomenis.

Bind mounts dažniausiai nurodomi docker run komandoje su sintakse kaip -v /myDirectory:/mnt (atkreipkite dėmesį į pradinį /). Docker Compose failuose jie pasirodo kaip volumes: /myDirectory:/mnt. Uždrauskite šias konfigūracijas arba prarasite savo duomenis.

Vietoj to, naudokite Docker tūrius, kurie yra valdomi Docker ir nenurodo absoliučių kelių.

Apibendrinant:

Neteisingas požiūris:

docker run -it -v /myDirectory:/mnt alpine

Teisingas požiūris:

docker volume create myVolume
docker run -it -v myVolume:/mnt alpine

Dirbant su Docker Compose failais:

Neteisinga konfigūracija:

services:
  myService:
    image: alpine
    volumes:
      - /myDirectory:/mnt

Teisinga konfigūracija:

services:
  myService:
    image: alpine
    volumes:
      - myVolume:/mnt

volumes:
  myVolume:
    name: myVolume

Čia yra greita nuoroda Docker tūrių valdymui:

  • Norėdami sukurti naują tūrį pavadinimu myVolume, vykdykite:

    docker volume create myVolume
    
  • Norėdami išvardyti visus esamus tūrius:

    docker volume ls
    
  • Norėdami pašalinti konkretų tūrį pavadinimu myVolume:

    docker volume rm myVolume
    

    Pastaba: Pašalinus tūrį, visi jame saugomi duomenys bus visam laikui ištrinti, ir jų atkurti nebus įmanoma.