Docker Koyo, Sashe na 6: Aiki tare da Bayanai

A cikin sashin yau na fassarar jerin abubuwa game da Docker, zamuyi magana game da aiki tare da bayanai. Musamman, game da kundin Docker. A cikin waɗannan kayan, koyaushe muna kwatanta hanyoyin shirye-shiryen Docker tare da kwatankwacin abinci iri-iri. Ba za mu kauce wa wannan al'ada a nan ba. Bari bayanai a Docker su zama kayan yaji. Akwai kayan yaji da yawa a duniya, kuma Docker yana da hanyoyi da yawa don aiki tare da bayanai.

Kashi na 1: Asali
Sashe na 2: sharuddan da ra'ayoyi
Sashe na 3: Dockerfiles
Sashe na 4: Rage girman hotuna da hanzarta taronsu
Sashe na 5: umarni
Sashe na 6: aiki tare da bayanai

Docker Koyo, Sashe na 6: Aiki tare da Bayanai

Lura cewa an shirya wannan kayan ta amfani da nau'in injin Docker 18.09.1 ​​da sigar API 1.39.

Ana iya adana bayanai a cikin Docker ko dai na ɗan lokaci ko na dindindin. Bari mu fara da bayanan wucin gadi.

Adana bayanai na wucin gadi

Akwai hanyoyi guda biyu don sarrafa bayanan wucin gadi a cikin kwantena Docker.

Ta hanyar tsoho, fayilolin da aikace-aikacen aikace-aikacen da ke gudana a cikin akwati aka ƙirƙira ana adana su a cikin madaidaicin kwantena da aka rubuta. Domin wannan na'ura ta yi aiki, babu wani abu na musamman da ke buƙatar saita shi. Ya zama mai arha da fara'a. Aikace-aikacen kawai yana buƙatar adana bayanan kuma ya ci gaba da yin abin da ya dace. Koyaya, bayan kwandon ya daina wanzuwa, bayanan da aka adana ta hanya mai sauƙi suma za su ɓace.

Adana fayilolin wucin gadi a cikin Docker wata mafita ce wacce ta dace da lamuran da ake buƙatar babban matakin aiki idan aka kwatanta da abin da ake iya cimma ta amfani da daidaitaccen tsarin ajiyar bayanai na wucin gadi. Idan ba kwa buƙatar adana bayanan ku fiye da yadda kwantena ke wanzuwa, kuna iya haɗawa da kwantena tmpfs - kantin bayanan wucin gadi wanda ke amfani da RAM mai masaukin baki. Wannan zai hanzarta aiwatar da ayyukan rubuta bayanai da karantawa.

Yakan faru sau da yawa cewa ana buƙatar adana bayanan ko da bayan kwandon ya daina wanzuwa. Don yin wannan, muna buƙatar hanyoyin adana bayanai na dindindin.

Ma'ajiyar bayanai na dindindin

Akwai hanyoyi guda biyu don sanya bayanan tsawon rayuwa fiye da rayuwar kwantena. Hanya ɗaya ita ce amfani da fasahar ɗaure dutsen. Tare da wannan hanyar, zaku iya hawa, alal misali, babban fayil na rayuwa zuwa akwati. Hanyoyin da ke wajen Docker kuma za su iya yin aiki tare da bayanan da aka adana a cikin irin wannan babban fayil. Haka ne duba tmpfs mount da kuma ɗaure fasaha.

Docker Koyo, Sashe na 6: Aiki tare da Bayanai
Hawan tmpfs da ɗaure dutsen

Rashin amfanin amfani da fasahar ɗaure shi ne cewa amfani da shi yana rikitar da ajiyar bayanai, ƙauran bayanai, raba bayanai tsakanin kwantena da yawa. Zai fi kyau a yi amfani da kundin Docker don ci gaba da adana bayanai.

Docker Volume

Ƙararren tsarin fayil ne wanda ke kan na'ura mai masauki a waje da kwantena. Docker ne ke ƙirƙira da sarrafa ƙararraki. Anan ga manyan kaddarorin Docker:

  • Hanya ce ta dindindin ta adana bayanai.
  • Sun kasance masu zaman kansu kuma sun rabu da kwantena.
  • Ana iya raba su tsakanin kwantena daban-daban.
  • Suna ba ka damar tsara ingantaccen karatu da rubuta bayanai.
  • Ana iya sanya ƙararrawa akan albarkatun mai samar da girgije mai nisa.
  • Ana iya ɓoye su.
  • Ana iya ba su sunaye.
  • Kwantena na iya shirya pre-yawan girma tare da bayanai.
  • Sun dace don gwaji.

Kamar yadda kake gani, kundin Docker yana da kaddarorin ban mamaki. Bari muyi magana game da yadda ake ƙirƙirar su.

Ƙirƙirar ƙararrawa

Ana iya ƙirƙirar ƙararrawa ta amfani da buƙatun Docker ko API.

Anan akwai umarni a cikin Dockerfile wanda ke ba ku damar ƙirƙirar ƙara lokacin fara akwati.

VOLUME /my_volume

Lokacin amfani da irin wannan umarni, Docker, bayan ƙirƙirar akwati, zai ƙirƙiri ƙarar da ke ƙunshe da bayanan da ya riga ya wanzu a ƙayyadadden wuri. Lura cewa idan kun ƙirƙiri ƙarar ta amfani da Dockerfile, wannan ba zai sauƙaƙa muku buƙatun tantance wurin hawan ƙarar ba.

Hakanan zaka iya ƙirƙirar juzu'i a cikin Dockerfile ta amfani da tsarin JSON.

Bugu da ƙari, ana iya ƙirƙirar kundin ta amfani da kayan aikin layin umarni yayin da akwati ke gudana.

Yin aiki tare da juzu'i daga layin umarni

▍ Halittar juzu'i

Kuna iya ƙirƙirar ƙarar tsaye tare da umarni mai zuwa:

docker volume create —-name my_volume

▍ Nemo bayanai game da kundin

Don duba jerin kundin Docker, yi amfani da umarni mai zuwa:

docker volume ls

Kuna iya bincika takamaiman ƙarar kamar haka:

docker volume inspect my_volume

▍ Share juzu'i

Kuna iya share ƙara kamar haka:

docker volume rm my_volume

Don cire duk kundin da ba a amfani da kwantena, zaku iya amfani da umarni mai zuwa:

docker volume prune

Kafin share kundin, Docker zai tambaye ku tabbatar da wannan aikin.

Idan ƙarar tana da alaƙa da kwantena, ba za a iya share wannan ƙarar ba har sai an share madaidaicin akwati. A lokaci guda, ko da an cire akwati, Docker ba koyaushe yana fahimtar wannan ba. Idan wannan ya faru, zaku iya amfani da umarni mai zuwa:

docker system prune

An tsara shi don tsaftace albarkatun Docker. Bayan aiwatar da wannan umarni, yakamata ku iya share kundin waɗanda a baya ba daidai ba ne.

Tutocin --mount da -- girma

Don aiki tare da juzu'i, lokacin da kuka kira umarni docker, sau da yawa za ku buƙaci amfani da tutoci. Misali, don ƙirƙirar ƙara yayin ƙirƙirar akwati, zaku iya amfani da wannan ginin:

docker container run --mount source=my_volume, target=/container/path/for/volume my_image

A zamanin da (har zuwa 2017), tutar ta shahara --volume. Da farko, wannan tuta (kuma ana iya amfani dashi a cikin gajeriyar tsari, to yana kama da haka -v) an yi amfani da shi don kwantena na tsaye, da tuta --mount - a cikin yanayin Docker Swarm. Koyaya, kamar na Docker 17.06, tutar --mount za a iya amfani da a kowane hali.

Ya kamata a lura da cewa lokacin amfani da tuta --mount Adadin ƙarin bayanan da za a ƙayyade a cikin umarnin yana ƙaruwa, amma, saboda dalilai da yawa, yana da kyau a yi amfani da wannan tuta ta musamman, kuma ba --volume. Tuta --mount shine kawai hanyar da ke ba ku damar aiki tare da ayyuka ko ƙididdige zaɓuɓɓukan direban ƙara. Har ila yau, wannan tutar ya fi sauƙi don aiki tare.

A cikin misalan da ke akwai na umarnin sarrafa bayanan Docker, zaku iya ganin misalai da yawa na amfani da tuta -v. Lokacin ƙoƙarin daidaita waɗannan umarni don kanku, ku tuna cewa tutocin --mount и --volume amfani da siga daban-daban. Wato ba za ku iya maye gurbin kawai ba -v a kan --mount kuma sami ƙungiyar aiki.

Babban bambanci tsakanin --mount и --volume shine lokacin amfani da tuta --volume Ana tattara duk sigogi a wuri ɗaya, da lokacin amfani --mount sigogi sun rabu.

Lokacin aiki tare --mount ana wakilta sigogi azaman maɓalli-darajar nau'i-nau'i, wato, kamanni key=value. An raba waɗannan nau'i-nau'i ta hanyar waƙafi. Anan akwai zaɓuɓɓukan da aka saba amfani da su --mount:

  • type - nau'in dutse. Ƙimar maɓalli mai dacewa zai iya zama daura, girma ko tmpfs. Muna magana ne game da kundin a nan, wato, muna sha'awar darajar volume.
  • source - Dutsen tushen. Don kundin masu suna, wannan shine sunan ƙarar. Don kundin da ba a bayyana sunansa ba, ba a ƙayyade wannan maɓalli ba. Ana iya gajarta zuwa src.
  • destination - hanyar da aka ɗora fayil ko babban fayil a cikin akwati. Ana iya gajarta wannan maɓalli zuwa dst ko target.
  • readonly - yana hawa ƙarar da aka yi niyya kawai don karatu. Amfani da wannan maɓalli na zaɓi ne, kuma ba a sanya masa ƙima ba.

Ga misalin amfani --mount tare da zaɓuɓɓuka masu yawa:

docker run --mount type=volume,source=volume_name,destination=/path/in/container,readonly my_image

Sakamakon

Anan akwai wasu umarni masu amfani waɗanda zaku iya amfani dasu yayin aiki tare da kundin Docker:

  • docker volume create
  • docker volume ls
  • docker volume inspect
  • docker volume rm
  • docker volume prune

Anan akwai jerin zaɓuɓɓukan da aka saba amfani da su don --mount, ana amfani da shi a cikin umarnin tsari docker run --mount my_options my_image:

  • type=volume
  • source=volume_name
  • destination=/path/in/container
  • readonly

Yanzu da muka kammala wannan jerin Docker, lokaci ya yi da za mu faɗi ƴan kalmomi game da inda ɗaliban Docker za su iya zuwa na gaba. a nan babban labari mai kyau game da Docker. a nan littafi game da Docker (lokacin siyan wannan littafin, yi ƙoƙarin samun bugu na baya-bayan nan). a nan wani littafi ga waɗanda suke tunanin yin aiki shine hanya mafi kyau don koyon fasaha.

Ya ku masu karatu! Wadanne kayan Docker za ku ba da shawarar don masu farawa su koya?

Docker Koyo, Sashe na 6: Aiki tare da Bayanai

source: www.habr.com

Add a comment