Mariho fa ity fitaovana ity dia nomanina tamin'ny alàlan'ny Docker engine version 18.09.1 sy ny API version 1.39.
Ny data ao amin'ny Docker dia azo tehirizina vetivety na maharitra. Andeha isika hanomboka amin'ny angona momba ny fotoana.
Fitehirizana angona vonjimaika
Ao amin'ny kaontenera Docker, azonao atao ny mandamina ny asa miaraka amin'ny angona vonjimaika amin'ny fomba roa.
Amin'ny alàlan'ny default, ny rakitra noforonin'ny fampiharana iray mandeha ao anaty container dia voatahiry ao amin'ny sosona azo soratana amin'ny container. Mba hampandehanana ity mekanika ity dia tsy misy zavatra manokana tokony hamboarina. Lasa mora sy falifaly. Mila mitahiry ny angon-drakitra fotsiny ny fampiharana ary manohy manao ny asany manokana. Na izany aza, rehefa tsy misy intsony ny kaontenera dia hanjavona ihany koa ny angon-drakitra voatahiry amin'ity fomba tsotra ity.
Misy vahaolana hafa amin'ny fitehirizana rakitra vonjimaika ao amin'ny Docker, mety amin'ny tranga izay ilanao ambaratonga ambony kokoa raha oharina amin'ny zavatra azo tanterahina amin'ny rafitra fitahirizana vonjimaika mahazatra. Raha tsy mila tehirizina lava kokoa noho ny misy ny kaontinao ianao, dia azonao atao ny mampifandray tmpfs amin'ny container - fitahirizana fampahalalana vonjimaika izay mampiasa ny RAM an'ny mpampiantrano. Hanafaingana ny asa fanoratana sy famakiana angona izany.
Matetika dia mila tehirizina ny angon-drakitra na dia tsy misy intsony aza ny container. Mba hanaovana izany dia mila mekanika fitahirizana angon-drakitra maharitra isika.
Fitehirizana angon-drakitra maharitra
Misy fomba roa hahatonga ny androm-piainan'ny data ho lava kokoa noho ny androm-piainan'ny kaontenera. Ny fomba iray dia ny fampiasana ny teknolojia bind mount. Amin'ity fomba ity dia azonao atao ny mametraka, ohatra, ny fampirimana tena misy eo amin'ny fitoeran-javatra. Ireo dingana any ivelan'ny Docker dia afaka miasa amin'ny angon-drakitra voatahiry ao anaty lahatahiry toy izany. Toy izao ny fomba jereo tmpfs mametaka sy mamatotra ny teknolojia mount.
Apetaho ny tmpfs ary fehezo ny mount
Ny fatiantoka amin'ny fampiasana ny teknolojia bind mount dia ny fampiasana azy dia manasarotra ny backup data, ny fifindran'ny data ary ny fifampizarana angon-drakitra eo amin'ireo kaontenera marobe. Tsara kokoa ny mampiasa volume Docker ho fitahirizana angon-drakitra maharitra.
Docker volumes
Ny volume dia rafitra fichier izay mipetraka amin'ny milina mpampiantrano ivelan'ny kaontenera. Docker dia mamorona sy mitantana boky. Ireto ny toetra fototry ny Docker volumes:
Izy ireo dia fomba fitahirizana maharitra ny vaovao.
Izy ireo dia mahaleo tena ary misaraka amin'ny kaontenera.
Azo zaraina amin'ny kaontenera samihafa izy ireo.
Izy ireo dia mamela anao handamina mamaky sy manoratra angona mahomby.
Ny boky dia azo apetraka amin'ny loharanon'ny mpamatsy rahona lavitra.
Azo atao encryption izy ireo.
Azo omena anarana izy ireo.
Ny kaontenera dia afaka mandamina mialoha ny hamenoana ny habetsaky ny angona.
Mety amin'ny fitsapana izy ireo.
Araka ny hitanao dia manana fananana lehibe ny docker volumes. Andeha isika hiresaka momba ny fomba hamoronana azy ireo.
Mamorona Boky
Ny volume dia azo noforonina amin'ny fampiasana Docker na amin'ny fangatahana API.
Rehefa mampiasa toromarika toy izao i Docker, rehefa avy namorona ny fitoeran-javatra, dia hamorona boky misy ny angona efa misy ao amin'ny toerana voafaritra. Mariho fa raha mamorona boky ianao amin'ny fampiasana Dockerfile, dia tsy manamaivana anao amin'ny filàna manondro teboka iray ho an'ny volume izany.
Azonao atao koa ny mamorona boky ao amin'ny Dockerfile amin'ny alàlan'ny format JSON.
Ankoatr'izay, azo atao ny mamorona volume amin'ny alàlan'ny baiko baiko rehefa mandeha ny container.
Raha hijery ny lisitry ny docker volumes dia ampiasao ity baiko manaraka ity:
docker volume ls
Azonao atao ny mijery volume manokana toy izao:
docker volume inspect my_volume
▍ Famafana feo
Azonao atao ny mamafa volume toy izao:
docker volume rm my_volume
Mba hamafa ireo boky rehetra tsy ampiasain'ny container dia azonao ampiasaina ity baiko manaraka ity:
docker volume prune
Alohan'ny famafana ny boky dia hangataka anao i Docker hanamarina ity hetsika ity.
Raha ampifandraisina amin'ny kaontenera ny boky iray, dia tsy azo fafana ilay horonam-peo raha tsy voafafa ilay fitoeran-javatra mifanaraka amin'izany. Amin'izay fotoana izay, na dia voafafa aza ny kaontenera, dia tsy azon'i Docker foana izany. Raha mitranga izany dia azonao ampiasaina ity baiko manaraka ity:
docker system prune
Izy io dia natao hanadiovana ny loharanon'ny Docker. Aorian'ny fampandehanana an'io baiko io dia tokony ho azonao atao ny mamafa ny boky izay diso ny sata voafaritra teo aloha.
--mount sy --volume saina
Mba hiasa amin'ny volumes anao, rehefa miantso ny baiko docker, matetika ianao dia tsy maintsy mampiasa saina. Ohatra, mba hamoronana volume mandritra ny famoronana container dia azonao ampiasaina ity fananganana manaraka ity:
docker container run --mount source=my_volume, target=/container/path/for/volume my_image
Tamin'ny andro fahiny (hatramin'ny 2017), nalaza ny saina --volume. Tamin'ny voalohany, ity saina ity (azo ampiasaina amin'ny endrika fanafohezana ihany koa, avy eo dia toa -v) dia nampiasaina ho an'ny kaontenera mitokana, ary ny saina --mount - ao amin'ny tontolo Docker Swarm. Na izany aza, toy ny Docker 17.06, ny saina --mount azo ampiasaina amin'ny toe-javatra rehetra.
Tsara homarihina fa rehefa mampiasa ny saina --mount mitombo ny habetsaky ny angon-drakitra fanampiny izay tsy maintsy voafaritra ao amin'ny baiko, saingy noho ny antony maro dia tsara kokoa ny mampiasa an'io saina io fa tsy --volume. sainam-pirenena --mount - Io no hany mekanika ahafahanao miasa amin'ny serivisy na mamaritra ny mari-pamantarana mpamily volume. Ankoatra izany, ity saina ity dia mora kokoa ny miasa.
Ao amin'ireo ohatra efa misy amin'ny baiko mikendry ny hiasa amin'ny angona ao amin'ny Docker, dia afaka mahita ohatra maro amin'ny fampiasana ny saina ianao -v. Rehefa manandrana mampifanaraka ireo baiko ireo ho anao ianao dia tadidio fa saina --mount и --volume mampiasa endrika paramètre samihafa. Izany hoe tsy azonao soloina tsotra izao -v amin'ny --mount ary mahazo ekipa miasa.
Ny tena maha samy hafa ny --mount и --volume izany ve rehefa mampiasa saina --volume ny masontsivana rehetra dia angonina miaraka amin'ny sehatra iray, ary rehefa ampiasaina --mount misaraka ny paramètre.
Rehefa miasa miaraka --mount ny paramètre dia aseho ho mpivady sanda fototra, izany hoe, toa key=value. Asarahin'ny faingo ireo mpivady ireo. Ireto ny safidy fampiasa matetika --mount:
type - karazana fametrahana. Ny sandan'ny fanalahidy mifandraika dia mety ho fehezinao, boky na tmpfs. Boky no resahina eto, izany hoe liana amin'ny dikany volume.
source - loharano tendrombohitra. Ho an'ny volume voatonona, ity no anaran'ny volume. Ho an'ny boky tsy voatonona anarana dia tsy voafaritra io lakile io. Azo hafohezina ho src.
destination — ny lalana ametrahana ilay rakitra na lahatahiry ao anaty fitoeran-javatra. Ity fanalahidy ity dia azo hafohezina ho dst na target.
readonly - mampiakatra ny volume izay kasaina ho vakiana ihany. Tsy voatery io fanalahidy io ary tsy misy sanda omena azy.
Ity misy lisitry ny masontsivana fampiasa matetika ho an'ny --mount, azo ampiharina amin'ny baiko toy ny docker run --mount my_options my_image:
type=volume
source=volume_name
destination=/path/in/container
readonly
Ankehitriny rehefa nofonosinay ity andiany Docker ity dia izao no fotoana hilazana teny vitsivitsy momba ny toerana halehan'ny mpianatra Docker manaraka. eto lahatsoratra tsara momba an'i Docker. eto boky momba an'i Docker (rehefa mividy ity boky ity, andramo maka ny edisiona farany). eto Boky iray hafa mety ho an'ireo izay mino fa ny fampiharana no fomba tsara indrindra hianarana ny teknolojia.
Ry mpamaky malala! Inona no fitaovana momba an'i Docker tianao hianarana ho an'ireo vao manomboka?