ዶከር ምንድን ነው፡ አጭር ጉዞ ወደ ታሪክ እና መሰረታዊ ረቂቅ

በኦገስት 10 በ Slurm ተጀመረ Docker የቪዲዮ ኮርስ, እኛ ሙሉ በሙሉ የምንተነትነው - ከመሠረታዊ ማጠቃለያዎች እስከ የአውታረ መረብ መለኪያዎች.

በዚህ ጽሑፍ ውስጥ ስለ ዶከር ታሪክ እና ስለ ዋና ዋናዎቹ ማብራሪያዎች እንነጋገራለን-Image, Cli, Dockerfile. ንግግሩ ለጀማሪዎች የታሰበ ነው, ስለዚህ ልምድ ላላቸው ተጠቃሚዎች ፍላጎት ሊኖረው አይችልም. ምንም ደም, ተጨማሪ ወይም ጥልቅ ጥምቀት አይኖርም. በጣም መሠረታዊዎቹ።

ዶከር ምንድን ነው፡ አጭር ጉዞ ወደ ታሪክ እና መሰረታዊ ረቂቅ

Docker ምንድን ነው?

የዶከርን ፍቺ ከዊኪፔዲያ እንይ።

ዶከር በኮንቴይነር በተያዙ አካባቢዎች ውስጥ የመተግበሪያዎችን ማሰማራት እና ማስተዳደር በራስ ሰር የሚሰራ ሶፍትዌር ነው።

ከዚህ ትርጉም ግልጽ የሆነ ነገር የለም። በተለይም "ኮንቴይነርን በሚደግፉ አከባቢዎች" ማለት ምን ማለት እንደሆነ ግልጽ አይደለም. ለማወቅ ወደ ኋላ እንመለስ። በተለምዶ “ሞኖሊቲክ ዘመን” ብዬ ከምጠራው ዘመን እንጀምር።

ሞኖሊቲክ ዘመን

የሞኖሊቲክ ዘመን የ2000ዎቹ መጀመሪያ ነው፣ ሁሉም አፕሊኬሽኖች አሃዳዊ ሲሆኑ፣ ከብዙ ጥገኞች ጋር። ልማት ብዙ ጊዜ ፈጅቷል። በዚያው ልክ ብዙ አገልጋዮች አልነበሩም፤ ሁሉንም በስም አውቀናል እና እንከታተላቸዋለን። እንደዚህ አይነት አስቂኝ ንፅፅር አለ፡-

የቤት እንስሳት የቤት እንስሳት ናቸው. በሞኖሊቲክ ዘመን፣ አገልጋዮቻችንን እንደ የቤት እንስሳት፣ ተዘጋጅተው እና እንደተከበሩ፣ የአቧራ ቅንጣቶችን እየነፋን እንይዛቸዋለን። እና ለተሻለ የሀብት አስተዳደር፣ ቨርቹዋልላይዜሽን ተጠቀምን፡ ሰርቨር ወስደን ወደ ብዙ ቨርቹዋል ማሽኖች ቆረጥን፣ በዚህም የአካባቢን መገለል አረጋገጥን።

በሃይፐርቫይዘር ላይ የተመሰረቱ ምናባዊ ስርዓቶች

ሁሉም ሰው ስለ ቨርቹዋልላይዜሽን ሲስተሞች ሰምቶ ሊሆን ይችላል፡ VMware፣ VirtualBox፣ Hyper-V፣ Qemu KVM፣ ወዘተ. የመተግበሪያ ማግለል እና የንብረት አያያዝን ይሰጣሉ፣ነገር ግን ጉዳቶቻቸውም አለባቸው። ቨርቹዋል ለማድረግ፣ ሃይፐርቫይዘር ያስፈልግዎታል። እና ሃይፐርቫይዘር ከሀብት በላይ ነው. እና ቨርቹዋል ማሽኑ ራሱ ብዙውን ጊዜ አጠቃላይ ኮሎሰስ ነው - ኦፕሬቲንግ ሲስተም፣ Nginx፣ Apache፣ እና ምናልባትም MySQL የያዘ ከባድ ምስል። ምስሉ ትልቅ ነው እና ቨርቹዋል ማሽኑ ለመስራት የማይመች ነው። በውጤቱም, ከቨርቹዋል ማሽኖች ጋር መስራት አዝጋሚ ሊሆን ይችላል. ይህንን ችግር ለመፍታት በከርነል ደረጃ ቨርቹዋል ሲስተም ተፈጥረዋል።

የከርነል ደረጃ የምናባዊነት ስርዓቶች

የከርነል ደረጃ ቨርቹዋል በOpenVZ፣ Systemd-nspawn፣ LXC ሲስተሞች ይደገፋል። የዚህ ዓይነቱ ቨርቹዋልነት አስደናቂ ምሳሌ LXC (ሊኑክስ ኮንቴይነሮች) ነው።

LXC የሊኑክስ ኦፐሬቲንግ ሲስተሙን በአንድ መስቀለኛ መንገድ ላይ ብዙ የተለዩ አጋጣሚዎችን ለማሄድ የስርዓተ ክወና ደረጃ የምናባዊ አሰራር ነው። LXC ምናባዊ ማሽኖችን አይጠቀምም, ነገር ግን የራሱ የሂደት ቦታ እና የኔትወርክ ቁልል ያለው ምናባዊ አካባቢ ይፈጥራል.

በመሠረቱ LXC መያዣዎችን ይፈጥራል. በምናባዊ ማሽኖች እና በመያዣዎች መካከል ያለው ልዩነት ምንድነው?

ዶከር ምንድን ነው፡ አጭር ጉዞ ወደ ታሪክ እና መሰረታዊ ረቂቅ

መያዣው ለማግለል ሂደቶች ተስማሚ አይደለም: ድክመቶች በከርነል ደረጃ ላይ በሚገኙ ምናባዊ ስርዓቶች ውስጥ ይገኛሉ ይህም ከእቃ መያዣው ወደ አስተናጋጁ ለማምለጥ ያስችላቸዋል. ስለዚህ, አንድን ነገር ማግለል ከፈለጉ, ምናባዊ ማሽንን መጠቀም የተሻለ ነው.

በምናባዊነት እና በመያዣነት መካከል ያለው ልዩነት በስዕሉ ላይ ሊታይ ይችላል።
በሃርድዌር ሃይፐርቫይዘሮች፣ በስርዓተ ክወናው ላይ ሃይፐርቫይዘሮች እና ኮንቴይነሮች አሉ።

ዶከር ምንድን ነው፡ አጭር ጉዞ ወደ ታሪክ እና መሰረታዊ ረቂቅ

የሆነ ነገር ማግለል ከፈለጉ የሃርድዌር ሃይፐርቫይዘሮች አሪፍ ናቸው። ምክንያቱም በማስታወሻ ገጾች እና በአቀነባባሪዎች ደረጃ መለየት ይቻላል.

እንደ መርሃግብሩ ሃይፐርቫይዘሮች አሉ, እና መያዣዎች አሉ, እና ስለእነሱ የበለጠ እንነጋገራለን. ኮንቴይነሬሽን ሲስተም ሃይፐርቫይዘር የላቸውም፣ ነገር ግን ኮንቴይነሮችን የሚፈጥር እና የሚያስተዳድር ኮንቴይነር ሞተር አለ። ይህ ነገር የበለጠ ክብደቱ ቀላል ነው፣ ስለዚህ ከዋናው ጋር በመሥራት ምክንያት ያነሰ ትርፍ ወይም በጭራሽ የለም።

በከርነል ደረጃ ለመያዣነት የሚውለው

ከሌሎች ሂደቶች የተነጠለ መያዣ እንዲፈጥሩ የሚያስችልዎ ዋና ቴክኖሎጂዎች የስም ቦታ እና የቁጥጥር ቡድኖች ናቸው።

የስም ቦታዎች፡ ፒአይዲ፣ አውታረ መረብ፣ ተራራ እና ተጠቃሚ። ብዙ አሉ፣ ግን በቀላሉ ለመረዳት በእነዚህ ላይ እናተኩራለን።

PID የስም ቦታ ሂደቶችን ይገድባል። ለምሳሌ የፒአይዲ ስም ቦታ ስንፈጥር እና ሂደቱን እዚያ ስናስቀምጠው ከPID ጋር ይሆናል 1. ብዙውን ጊዜ በሲስተሞች ውስጥ PID 1 ሲስተም ወይም init ነው። በዚህ መሠረት አንድን ሂደት በአዲስ የስም ቦታ ስናስቀምጠው PID 1ንም ይቀበላል።

የአውታረ መረብ ስም ቦታ አውታረ መረቡን እንዲገድቡ/እንዲገለሉ እና የራስዎን በይነገጾች ውስጥ እንዲያስቀምጡ ያስችልዎታል። ተራራ የፋይል ስርዓት ገደብ ነው። ተጠቃሚ - በተጠቃሚዎች ላይ ገደብ.

የቁጥጥር ቡድኖች፡ ማህደረ ትውስታ፣ ሲፒዩ፣ IOPS፣ አውታረ መረብ - በአጠቃላይ ወደ 12 ቅንብሮች። አለበለዚያ ግሩፕ ("C-groups") ተብለው ይጠራሉ.

የቁጥጥር ቡድኖች የመያዣ ሀብቶችን ያስተዳድራሉ ። በመቆጣጠሪያ ቡድኖች በኩል መያዣው ከተወሰነ መጠን በላይ መብላት የለበትም ማለት እንችላለን.

ኮንቴይነር ሙሉ በሙሉ እንዲሠራ ተጨማሪ ቴክኖሎጂዎች ጥቅም ላይ ይውላሉ: ችሎታዎች, ቅጂ-በ-ጽሑፍ እና ሌሎች.

ችሎታዎች ለአንድ ሂደት ምን ማድረግ እንደሚችሉ እና ምን ማድረግ እንደማይችሉ ስንነግራቸው ነው። በከርነል ደረጃ፣ እነዚህ በቀላሉ ብዙ መለኪያዎች ያሏቸው ቢትማፕ ናቸው። ለምሳሌ, ስርወ ተጠቃሚው ሙሉ መብቶች አሉት እና ሁሉንም ነገር ማድረግ ይችላል. የጊዜ አገልጋዩ የስርዓት ጊዜውን ሊለውጥ ይችላል: በ Time Capsule ላይ ችሎታዎች አሉት, እና ያ ነው. ልዩ መብቶችን በመጠቀም ለሂደቶች ገደቦችን በተለዋዋጭ ማዋቀር እና በዚህም እራስዎን መጠበቅ ይችላሉ።

የቅጂ-ላይ-ጻፍ ስርዓት ከ Docker ምስሎች ጋር እንድንሰራ እና የበለጠ በብቃት እንድንጠቀም ያስችለናል።

ዶከር በአሁኑ ጊዜ ከCgroups v2 ጋር የተኳሃኝነት ችግሮች አሉት፣ ስለዚህ ይህ መጣጥፍ በተለይ በCgroups v1 ላይ ያተኩራል።

ግን ወደ ታሪክ እንመለስ።

የቨርቹዋል ሲስተምስ በከርነል ደረጃ ሲታዩ በንቃት ጥቅም ላይ መዋል ጀመሩ። በሃይፐርቫይዘር ላይ ያለው ትርፍ ጠፋ, ነገር ግን አንዳንድ ችግሮች ቀርተዋል:

  • ትላልቅ ምስሎች: ኦፕሬቲንግ ሲስተሙን, ቤተ-መጻሕፍትን, የተለያዩ ሶፍትዌሮችን ወደ ተመሳሳይ OpenVZ ይገፋሉ, እና በመጨረሻም ምስሉ አሁንም በጣም ትልቅ ይሆናል.
  • ለማሸግ እና ለማድረስ መደበኛ መስፈርት የለም, ስለዚህ የጥገኛዎች ችግር አሁንም ይቀራል. ሁለት የኮድ ቁርጥራጮች አንድ አይነት ቤተ-መጽሐፍት ሲጠቀሙ, ግን ከተለያዩ ስሪቶች ጋር ሲጠቀሙ ሁኔታዎች አሉ. በመካከላቸው ግጭት ሊኖር ይችላል.

እነዚህን ሁሉ ችግሮች ለመፍታት, የሚቀጥለው ዘመን መጥቷል.

የመያዣ ዘመን

የኮንቴይነሮች ዘመን ሲደርስ ከእነሱ ጋር የመሥራት ፍልስፍና ተለወጠ፡-

  • አንድ ሂደት - አንድ መያዣ.
  • የአሰራር ሂደቱ የሚያስፈልጉትን ሁሉንም ጥገኞች ወደ መያዣው እናደርሳለን። ይህ ሞኖሊቶችን ወደ ማይክሮ አገልግሎት መቁረጥ ይጠይቃል።
  • ምስሉ አነስ ባለ መጠን, የተሻለ ይሆናል - አነስተኛ ሊሆኑ የሚችሉ ድክመቶች አሉ, በፍጥነት ይሽከረከራል, ወዘተ.
  • ምሳሌዎች ጊዜያዊ ይሆናሉ።

ስለ የቤት እንስሳት እና ከብቶች የተናገርኩትን አስታውስ? ቀደም ሲል ሁኔታዎች እንደ የቤት እንስሳት ነበሩ, አሁን ግን እንደ ከብት ሆነዋል. ከዚህ በፊት ሞኖሊክ - አንድ መተግበሪያ ነበር. አሁን 100 ማይክሮ ሰርቪስ, 100 ኮንቴይነሮች ናቸው. አንዳንድ መያዣዎች 2-3 ቅጂዎች ሊኖራቸው ይችላል. እያንዳንዱን ኮንቴይነር ለመቆጣጠር ለእኛ አስፈላጊነቱ ያነሰ ይሆናል። ለእኛ ይበልጥ አስፈላጊ የሆነው የአገልግሎቱ መገኘት ራሱ ነው-ይህ የእቃ መያዣዎች ስብስብ ምን እንደሚሰራ. ይህ የክትትል አቀራረቦችን ይለውጣል.

እ.ኤ.አ. በ 2014-2015 ዶከር አድጓል - አሁን የምንነጋገረው ቴክኖሎጂ።

ዶከር ፍልስፍናውን እና ደረጃውን የጠበቀ የመተግበሪያ ማሸግ ለውጦታል። ዶከርን በመጠቀም አፕሊኬሽኑን ማሸግ፣ ወደ ማጠራቀሚያ መላክ፣ ከዚያ ማውረድ እና ማሰማራት እንችላለን።

የሚያስፈልገንን ነገር ሁሉ ወደ ዶከር መያዣ ውስጥ እናስገባዋለን, ስለዚህ የጥገኝነት ችግሩ ተፈትቷል. ዶከር እንደገና ለመራባት ዋስትና ይሰጣል. እኔ እንደማስበው ብዙ ሰዎች እንደገና መወለድ አለመቻል ያጋጠሟቸው ይመስለኛል-ሁሉም ነገር ለእርስዎ ይሠራል ፣ ወደ ምርት ይግፉት እና እዚያ መሥራት ያቆማል። በዶከር ይህ ችግር ይወገዳል. የዶከር ኮንቴይነርዎ ከጀመረ እና ምን ማድረግ እንዳለበት ካደረገ በከፍተኛ ደረጃ ፕሮባቢሊቲ ማምረት ይጀምራል እና እዚያም ተመሳሳይ ነገር ያደርጋል።

ከመጠን በላይ መጨናነቅ

ስለ ከመጠን በላይ ወጪዎች ሁል ጊዜ አለመግባባቶች አሉ። አንዳንድ ሰዎች ዶከር የሊኑክስን ከርነል እና ለማጠራቀሚያ አስፈላጊ የሆኑትን ሁሉንም ሂደቶች ስለሚጠቀም ተጨማሪ ጭነት እንደማይወስድ ያምናሉ። ልክ፣ “ዶከር ከአናት በላይ ነው ካልክ የሊኑክስ ከርነል ከአናት በላይ ነው።

በሌላ በኩል፣ ከጠለቅክ፣ በዶከር ውስጥ ብዙ ነገሮች አሉ፣ ከተዘረጋ፣ ከአቅም በላይ ናቸው ማለት ይቻላል።

የመጀመሪያው የPID ስም ቦታ ነው። በስም ቦታ ላይ አንድ ሂደትን ስናስቀምጠው PID ይመደባል 1. በተመሳሳይ ጊዜ, ይህ ሂደት ሌላ PID አለው, እሱም በአስተናጋጅ ስም ቦታ ላይ, ከመያዣው ውጭ. ለምሳሌ, Nginx ን በእቃ መያዣ ውስጥ አስነሳነው, PID 1 (ዋና ሂደት) ሆነ. በአስተናጋጁ ላይ ደግሞ PID 12623. እና ምን ያህል ኦቨር ራስ እንደሆነ ለመናገር ይከብዳል።

ሁለተኛው ነገር Cgroups ነው. ግሩፕን በማህደረ ትውስታ እንውሰድ፣ ያም ማለት የመያዣ ማህደረ ትውስታን የመገደብ ችሎታ። ሲነቃ ቆጣሪዎች እና የማስታወሻ አካውንቲንግ ይንቀሳቀሳሉ፡ ከርነሉ ምን ያህል ገፆች እንደተመደቡ እና ምን ያህል አሁንም ለዚህ መያዣ ነፃ እንደሆኑ መረዳት አለበት። ይህ ምናልባት ከአቅም በላይ ነው፣ ነገር ግን አፈፃፀሙን እንዴት እንደሚጎዳ ምንም አይነት ትክክለኛ ጥናቶች አላየሁም። እና እኔ ራሴ በዶከር ውስጥ የሚሰራው መተግበሪያ በድንገት በአፈፃፀም ላይ ከፍተኛ ኪሳራ እንዳጋጠመው አላስተዋልኩም።

እና ስለ አፈጻጸም አንድ ተጨማሪ ማስታወሻ. አንዳንድ የከርነል መለኪያዎች ከአስተናጋጁ ወደ መያዣው ይተላለፋሉ. በተለይም አንዳንድ የአውታረ መረብ መለኪያዎች. ስለዚህ, በ Docker ውስጥ ከፍተኛ አፈጻጸም ያለው ነገር ማሄድ ከፈለጉ, ለምሳሌ, አውታረ መረቡን በንቃት የሚጠቀም, ቢያንስ እነዚህን መለኪያዎች ማስተካከል ያስፈልግዎታል. አንዳንድ nf_conntrack፣ ለምሳሌ።

ስለ ዶከር ጽንሰ-ሐሳብ

Docker በርካታ ክፍሎችን ያቀፈ ነው-

  1. ዶከር ዴሞን ተመሳሳይ የመያዣ ሞተር ነው; መያዣዎችን ያስነሳል.
  2. Docker CII የዶከር አስተዳደር መገልገያ ነው።
  3. Dockerfile - ምስልን እንዴት እንደሚገነቡ መመሪያዎች.
  4. ምስል - መያዣው የሚገለበጥበት ምስል.
  5. መያዣ.
  6. Docker መዝገብ የምስል ማከማቻ ነው።

በስርዓተ-ፆታ መልኩ ይህን ይመስላል።

ዶከር ምንድን ነው፡ አጭር ጉዞ ወደ ታሪክ እና መሰረታዊ ረቂቅ

ዶከር ዴሞን በDocker_host ላይ ይሰራል እና ኮንቴይነሮችን ያስነሳል። ትዕዛዞችን የሚልክ ደንበኛ አለ: ምስሉን ይገንቡ, ምስሉን ያውርዱ, መያዣውን ያስጀምሩ. ዶከር ዴሞን ወደ መዝገብ ቤት ሄዶ ያስፈጽማቸዋል። የዶከር ደንበኛ ሁለቱንም በአገር ውስጥ (ወደ ዩኒክስ ሶኬት) እና በTCP በኩል ከርቀት አስተናጋጅ ማግኘት ይችላል።

በእያንዳንዱ ክፍል ውስጥ እንሂድ.

ዶከር ዴሞን - ይህ የአገልጋይ ክፍል ነው, በአስተናጋጅ ማሽን ላይ ይሰራል: ምስሎችን ያውርዳል እና መያዣዎችን ከነሱ ያስነሳል, በመያዣዎች መካከል አውታረመረብ ይፈጥራል, ምዝግብ ማስታወሻዎችን ይሰበስባል. "ምስል ፍጠር" ስንል ጋኔኑም እንዲሁ ያደርጋል።

Docker CLI - የዶከር ደንበኛ ክፍል ፣ ከዲሞን ጋር ለመስራት የኮንሶል መገልገያ። እደግመዋለሁ, በአካባቢው ብቻ ሳይሆን በኔትወርኩ ላይም ሊሠራ ይችላል.

መሰረታዊ ትዕዛዞች፡-

docker ps - በአሁኑ ጊዜ በ Docker አስተናጋጅ ላይ የሚሰሩ ኮንቴይነሮችን አሳይ።
ዶከር ምስሎች - በአገር ውስጥ የወረዱ ምስሎችን ያሳዩ።
docker ፍለጋ <> - በመዝገቡ ውስጥ ምስል ይፈልጉ።
docker pull <> - ምስሉን ከመዝገቡ ወደ ማሽኑ ያውርዱ።
ዶከር ግንባታ < > - ምስሉን ሰብስብ.
docker run <> - መያዣውን አስነሳ።
docker rm <> - መያዣውን ያስወግዱ.
docker logs <> - የመያዣ ምዝግብ ማስታወሻዎች
docker ጀምር/አቁም/እንደገና አስጀምር <> - ከመያዣው ጋር መሥራት

እነዚህን ትእዛዞች በደንብ ከተቆጣጠሩት እና እነሱን ለመጠቀም እርግጠኛ ከሆኑ እራስዎን በ Docker በተጠቃሚ ደረጃ 70% ብቁ እንደሆኑ ያስቡ።

Dockerfile - ምስል ለመፍጠር መመሪያዎች. እያንዳንዱ መመሪያ ማለት ይቻላል አዲስ ንብርብር ነው። አንድ ምሳሌ እንመልከት።

ዶከር ምንድን ነው፡ አጭር ጉዞ ወደ ታሪክ እና መሰረታዊ ረቂቅ

Dockerfile ይህን ይመስላል: በግራ በኩል ትዕዛዞች, በቀኝ በኩል ክርክሮች. እዚህ ያለው እያንዳንዱ ትዕዛዝ (እና በአጠቃላይ በ Dockerfile ውስጥ የተፃፈ) በምስል ውስጥ አዲስ ንብርብር ይፈጥራል።

በግራ በኩል እንኳን እንኳን, ምን እየተፈጠረ እንዳለ በትክክል መረዳት ይችላሉ. እኛ “አቃፊ ፍጠርልን” ​​እንላለን - ይህ አንድ ንብርብር ነው። "አቃፊውን እንዲሰራ አድርግ" ሌላ ንብርብር ነው, ወዘተ. የንብርብር ኬክ ሕይወትን ቀላል ያደርገዋል። ሌላ Dockerfile ከፈጠርኩ እና በመጨረሻው መስመር ላይ የሆነ ነገር ከቀየርኩ - ከ “python” “main.py” ሌላ ነገር አከናውኛለሁ ፣ ወይም ከሌላ ፋይል ላይ ጥገኛዎችን እጭነዋለሁ - ከዚያ የቀደሙት ንብርብሮች እንደ መሸጎጫ እንደገና ጥቅም ላይ ይውላሉ።

ምስል - ይህ የእቃ መያዣ ማሸጊያ ነው, ኮንቴይነሮች ከምስሉ ተነስተዋል. ዶከርን ከጥቅል አስተዳዳሪ እይታ አንፃር ከተመለከትን (ከዴብ ወይም ከ rpm ፓኬጆች ጋር እንደምንሠራ ያህል) ፣ ከዚያ ምስሉ በመሠረቱ የ rpm ጥቅል ነው። በ yum install አፕሊኬሽኑን ጫን፣ሰርዝ፣በማከማቻው ውስጥ ፈልገን ማውረድ እንችላለን። እዚህ ጋር ተመሳሳይ ነው: ኮንቴይነሮች ከምስሉ ላይ ተጀምረዋል, በ Docker መዝገብ ውስጥ ይቀመጣሉ (ከዩም ጋር ተመሳሳይ ነው, በማጠራቀሚያ ውስጥ), እና እያንዳንዱ ምስል SHA-256 ሃሽ, ስም እና መለያ አለው.

ምስሉ የተገነባው ከ Dockerfile መመሪያ መሰረት ነው. ከDockerfile እያንዳንዱ መመሪያ አዲስ ንብርብር ይፈጥራል። ንብርብሮች እንደገና ጥቅም ላይ ሊውሉ ይችላሉ.

Docker መዝገብ ቤት የዶከር ምስል ማከማቻ ነው። ከስርዓተ ክወናው ጋር በሚመሳሰል መልኩ Docker የህዝብ መደበኛ መዝገብ አለው - dockerhub። ነገር ግን የእራስዎን ማከማቻ, የራስዎን የዶከር መዝገብ ቤት መገንባት ይችላሉ.

መያዣ - ከምስሉ የጀመረው. በ Dockerfile መመሪያ መሰረት ምስል ገንብተናል, ከዚያ ከዚህ ምስል እንጀምራለን. ይህ ኮንቴይነር ከሌሎች ኮንቴይነሮች ተለይቷል እና ለትግበራው አስፈላጊ የሆኑትን ነገሮች ሁሉ መያዝ አለበት. በዚህ ሁኔታ አንድ መያዣ - አንድ ሂደት. ሁለት ሂደቶችን ማድረግ ሲኖርብዎት ይከሰታል፣ ነገር ግን ይህ ከዶከር ርዕዮተ ዓለም ተቃራኒ ነው።

የ"አንድ መያዣ፣ አንድ ሂደት" መስፈርት ከPID ስም ቦታ ጋር የተያያዘ ነው። ከPID 1 ጋር ያለው ሂደት በስም ቦታ ሲጀምር፣ በድንገት ከሞተ፣ መያዣው በሙሉ ይሞታል። ሁለት ሂደቶች እዚያ እየሮጡ ከሆነ: አንዱ ህያው ነው እና ሌላኛው ሞቷል, ከዚያም መያዣው አሁንም ይኖራል. ግን ይህ ጥያቄ ነው ምርጥ ልምዶች , በሌሎች ቁሳቁሶች ውስጥ ስለእነሱ እንነጋገራለን.

የትምህርቱን ባህሪያት እና ሙሉ መርሃ ግብሩን በበለጠ ዝርዝር ለማጥናት እባክዎን አገናኙን ይከተሉ፡ "Docker ቪዲዮ ኮርስ».

ደራሲ፡ ማርሴል ኢብራየቭ፣ የተረጋገጠ የኩበርኔትስ አስተዳዳሪ፣ በሳውዝብሪጅ መሀንዲስ መሀንዲስ፣ ተናጋሪ እና የስሉርም ኮርሶች አዘጋጅ።

ምንጭ: hab.com

አስተያየት ያክሉ