VM ืื• Docker?

ืื™ืš ืืชื” ื™ื•ื“ืข ืื ืืชื” ืฆืจื™ืš Docker ื•ืœื VM? ืืชื” ืฆืจื™ืš ืœืงื‘ื•ืข ืžื” ื‘ื“ื™ื•ืง ืืชื” ืจื•ืฆื” ืœื‘ื•ื“ื“. ืื ืืชื” ืจื•ืฆื” ืœื‘ื•ื“ื“ ืžืขืจื›ืช ืขื ืžืฉืื‘ื™ื ื™ื™ืขื•ื“ื™ื™ื ืžื•ื‘ื˜ื—ื™ื ื•ื—ื•ืžืจื” ื•ื™ืจื˜ื•ืืœื™ืช, ื”ื‘ื—ื™ืจื” ืฆืจื™ื›ื” ืœื”ื™ื•ืช VM. ืื ืืชื” ืฆืจื™ืš ืœื‘ื•ื“ื“ ื™ื™ืฉื•ืžื™ื ืคื•ืขืœื™ื ื›ืชื”ืœื™ื›ื™ ืžืขืจื›ืช ื ืคืจื“ื™ื, ืชืฆื˜ืจืš Docker.

ืื– ืžื” ื”ื”ื‘ื“ืœ ื‘ื™ืŸ ืžื›ื•ืœื•ืช Docker ืœ-VMs?

ืžื›ื•ื ื” ื•ื™ืจื˜ื•ืืœื™ืช (VM) ื”ื•ื ืžื—ืฉื‘ ื•ื™ืจื˜ื•ืืœื™ ืขื ื›ืœ ื”ืžื›ืฉื™ืจื™ื ื”ื•ื•ื™ืจื˜ื•ืืœื™ื™ื ื•ื“ื™ืกืง ืงืฉื™ื— ื•ื™ืจื˜ื•ืืœื™ ืขืœื™ื• ืžื•ืชืงื ืช ืžืขืจื›ืช ื”ืคืขืœื” ืขืฆืžืื™ืช ื—ื“ืฉื” ื™ื—ื“ ืขื ืžื ื”ืœื™ ื”ืชืงื ื™ื ื•ื™ืจื˜ื•ืืœื™ื™ื, ื ื™ื”ื•ืœ ื–ื™ื›ืจื•ืŸ ื•ืจื›ื™ื‘ื™ื ื ื•ืกืคื™ื. ื›ืœื•ืžืจ, ืื ื• ืžืงื‘ืœื™ื ื”ืคืฉื˜ื” ืฉืœ โ€‹โ€‹ื—ื•ืžืจื” ืคื™ื–ื™ืช ื”ืžืืคืฉืจืช ืœื ื• ืœื”ืคืขื™ืœ ืžื—ืฉื‘ื™ื ื•ื™ืจื˜ื•ืืœื™ื™ื ืจื‘ื™ื ืขืœ ืžื—ืฉื‘ ืื—ื“.
VM ืžื•ืชืงืŸ ื™ื›ื•ืœ ืœืชืคื•ืก ืžืงื•ื ื‘ื“ื™ืกืง ืฉืœ ื”ืžื—ืฉื‘ ืฉืœืš ื‘ื“ืจื›ื™ื ืฉื•ื ื•ืช:

  • ืฉื˜ื— ื“ื™ืกืง ืงืฉื™ื— ืงื‘ื•ืข, ื”ืžืืคืฉืจ ื’ื™ืฉื” ืžื”ื™ืจื” ื™ื•ืชืจ ืœื“ื™ืกืง ื”ืงืฉื™ื— ื”ื•ื™ืจื˜ื•ืืœื™ ื•ืžื•ื ืข ืคื™ืฆื•ืœ ืงื‘ืฆื™ื;
  • ื”ืงืฆืืช ื–ื™ื›ืจื•ืŸ ื“ื™ื ืžื™ืช. ื‘ืขืช ื”ืชืงื ืช ื™ื™ืฉื•ืžื™ื ื ื•ืกืคื™ื, ื”ื–ื™ื›ืจื•ืŸ ื™ื•ืงืฆื” ืขื‘ื•ืจื ื‘ืื•ืคืŸ ื“ื™ื ืžื™ ืขื“ ืฉื™ื’ื™ืข ืœื›ืžื•ืช ื”ืžืงืกื™ืžืœื™ืช ืฉื”ื•ืงืฆื” ืœื•.

ื›ื›ืœ ืฉื™ื•ืชืจ ืžื›ื•ื ื•ืช ื•ื™ืจื˜ื•ืืœื™ื•ืช ืœืฉืจืช, ื›ืš ื”ืŸ ืชื•ืคืกื•ืช ื™ื•ืชืจ ืžืงื•ื, ื•ื’ื ื“ื•ืจืฉื•ืช ืชืžื™ื›ื” ืžืชืžื“ืช ื‘ืกื‘ื™ื‘ื” ื”ื ื“ืจืฉืช ืœื”ืคืขืœืช ื”ืืคืœื™ืงืฆื™ื” ืฉืœืš.

ืกึทื•ึธืจ ื”ื™ื ืชื•ื›ื ื” ืœื™ืฆื™ืจืช ื™ื™ืฉื•ืžื™ื ืžื‘ื•ืกืกื™ ืงื•ื ื˜ื™ื™ื ืจ. ืœืžื›ื•ืœื•ืช ื•ืœืžื›ื•ื ื•ืช ื•ื™ืจื˜ื•ืืœื™ื•ืช ื™ืฉ ื™ืชืจื•ื ื•ืช ื“ื•ืžื™ื, ืืš ืคื•ืขืœื™ื ืื—ืจืช. ืžื™ื›ืœื™ื ืชื•ืคืกื™ื ืคื—ื•ืช ืžืงื•ื ื›ื™... ืœืขืฉื•ืช ืฉื™ืžื•ืฉ ื—ื•ื–ืจ ื™ื•ืชืจ ื‘ืžืฉืื‘ื™ื ืžืฉื•ืชืคื™ื ืฉืœ ื”ืžืขืจื›ืช ื”ืžืืจื—ืช ืžืืฉืจ ื‘-VM, ืžื›ื™ื•ื•ืŸ ื‘ื ื™ื’ื•ื“ ืœ-VM, ื”ื•ื ืžืกืคืง ื•ื™ืจื˜ื•ืืœื™ื–ืฆื™ื” ื‘ืจืžืช ืžืขืจื›ืช ื”ื”ืคืขืœื”, ืœื ื‘ืจืžืช ื”ื—ื•ืžืจื”. ื’ื™ืฉื” ื–ื• ืžื‘ื™ืื” ืœื˜ื‘ื™ืขืช ื–ื™ื›ืจื•ืŸ ื ืžื•ื›ื” ื™ื•ืชืจ, ืœืคืจื™ืกื” ืžื”ื™ืจื” ื™ื•ืชืจ ื•ืœืฉื™ื ื•ื™ ืงื ื” ืžื™ื“ื” ืงืœ ื™ื•ืชืจ.

ื”ืงื•ื ื˜ื™ื™ื ืจ ืžืกืคืง ืžื ื’ื ื•ืŸ ื™ืขื™ืœ ื™ื•ืชืจ ืœืœืงื™ื—ืช ื™ื™ืฉื•ืžื™ื ืขืœ ื™ื“ื™ ืืกืคืงืช ื”ืžืžืฉืงื™ื ื”ื“ืจื•ืฉื™ื ืœืžืขืจื›ืช ื”ืžืืจื—ืช. ืชื›ื•ื ื” ื–ื• ืžืืคืฉืจืช ืœืงื•ื ื˜ื™ื™ื ืจื™ื ืœืฉืชืฃ ืืช ืœื™ื‘ืช ื”ืžืขืจื›ืช, ื›ืืฉืจ ื›ืœ ืงื•ื ื˜ื™ื™ื ืจ ืคื•ืขืœ ื›ืชื”ืœื™ืš ื ืคืจื“ ืฉืœ ืžืขืจื›ืช ื”ืคืขืœื” ืžืืจื— ืฉื™ืฉ ืœื• ืงื‘ื•ืฆื” ืžืฉืœื• ืฉืœ ืื–ื•ืจื™ ื–ื™ื›ืจื•ืŸ (ืžืจื—ื‘ ื›ืชื•ื‘ื•ืช ื•ื™ืจื˜ื•ืืœื™ ืžืฉืœื•). ืžื›ื™ื•ื•ืŸ ืฉืžืจื—ื‘ ื”ื›ืชื•ื‘ื•ืช ื”ื•ื•ื™ืจื˜ื•ืืœื™ ืฉืœ ื›ืœ ืžื™ื›ืœ ื”ื•ื ืฉืœื•, ืœื ื ื™ืชืŸ ืœืฉื ื•ืช ื ืชื•ื ื™ื ื”ืฉื™ื™ื›ื™ื ืœืื–ื•ืจื™ ื–ื™ื›ืจื•ืŸ ืฉื•ื ื™ื.
ืžืขืจื›ืช ื”ื”ืคืขืœื” ื”ืžืงื•ืจื™ืช ืฉืœ Docker ื”ื™ื ืœื™ื ื•ืงืก (ืืคืฉืจ ืœื”ืฉืชืžืฉ ื‘-Docker ื’ื ื‘-Windows ื•ื‘-MacOS), ื”ื™ื ืžืฉืชืžืฉืช ื‘ื™ืชืจื•ื ื•ืช ื”ืขื™ืงืจื™ื™ื ืฉืœื”, ื”ืžืืคืฉืจื™ื ืœื” ืœืืจื’ืŸ ืืช ื”ืคืจื“ืช ื”ืœื™ื‘ื”. ื”ืคืขืœืช ืงื•ื ื˜ื™ื™ื ืจื™ื ืฉืœ Docker ื‘-Windows ืชืชื‘ืฆืข ื‘ืชื•ืš ืžื›ื•ื ื” ื•ื™ืจื˜ื•ืืœื™ืช ื”ืžืจื™ืฅ ืžืขืจื›ืช ื”ืคืขืœื” ืœื™ื ื•ืงืก, ืžื›ื™ื•ื•ืŸ ืงื•ื ื˜ื™ื™ื ืจื™ื ื—ื•ืœืงื™ื ืืช ืžืขืจื›ืช ื”ื”ืคืขืœื” ืฉืœ ื”ืžืขืจื›ืช ื”ืžืืจื—ืช ื•ืžืขืจื›ืช ื”ื”ืคืขืœื” ื”ืขื™ืงืจื™ืช ืขื‘ื•ืจื ื”ื™ื ืœื™ื ื•ืงืก.

ืžื™ื›ืœ - ืื™ืš ื–ื” ืขื•ื‘ื“?

ืžื›ื•ืœื” ื”ื•ื ื”ืคืฉื˜ื” ื‘ืจืžืช ื”ื™ื™ืฉื•ื ื”ืžืฉืœื‘ืช ืงื•ื“ ื•ืชืœื•ืช. ืงื•ื ื˜ื™ื™ื ืจื™ื ื ื•ืฆืจื™ื ืชืžื™ื“ ืžืชืžื•ื ื•ืช, ื”ื•ืกืคืช ืฉื›ื‘ื” ืขืœื™ื•ื ื” ื ื™ืชื ืช ืœื›ืชื™ื‘ื” ื•ืืชื—ื•ืœ ืคืจืžื˜ืจื™ื ืฉื•ื ื™ื. ืžื›ื™ื•ื•ืŸ ืฉืœืžื›ื•ืœื” ื™ืฉ ืฉื›ื‘ืช ื›ืชื™ื‘ื” ืžืฉืœื• ื•ื›ืœ ื”ืฉื™ื ื•ื™ื™ื ืžืื•ื—ืกื ื™ื ื‘ืฉื›ื‘ื” ื–ื•, ืงื•ื ื˜ื™ื™ื ืจ ืžืจื•ื‘ื™ื ื™ื›ื•ืœื™ื ืœืฉืชืฃ ื’ื™ืฉื” ืœืื•ืชื” ืชืžื•ื ืช ืžืืกื˜ืจ.

ื ื™ืชืŸ ืœื”ื’ื“ื™ืจ ื›ืœ ืงื•ื ื˜ื™ื™ื ืจ ื“ืจืš ืงื•ื‘ืฅ ื‘ืคืจื•ื™ืงื˜ docker-compose ื”ื›ืœื•ืœ ื‘ืคืชืจื•ืŸ ื”ืจืืฉื™ - docker-compose.yml. ืฉื ืืชื” ื™ื›ื•ืœ ืœื”ื’ื“ื™ืจ ืคืจืžื˜ืจื™ื ืฉื•ื ื™ื ื›ื’ื•ืŸ ืฉื ืงื•ื ื˜ื™ื™ื ืจ, ื™ืฆื™ืื•ืช, ืžื–ื”ื™ื, ืžื’ื‘ืœื•ืช ืžืฉืื‘ื™ื, ืชืœื•ืช ื‘ื™ืŸ ืงื•ื ื˜ื™ื™ื ืจื™ื ืื—ืจื™ื. ืื ืœื ืชืฆื™ื™ืŸ ืฉื ืงื•ื ื˜ื™ื™ื ืจ ื‘ื”ื’ื“ืจื•ืช, Docker ืชื™ืฆื•ืจ ืงื•ื ื˜ื™ื™ื ืจ ื—ื“ืฉ ื‘ื›ืœ ืคืขื, ื•ื™ืขื ื™ืง ืœื• ืฉื ื‘ืื•ืคืŸ ืืงืจืื™.

ื›ืืฉืจ ืžื™ื›ืœ ืžื•ืคืขืœ ืžืชืžื•ื ื”, Docker ืžืขืœื” ืžืขืจื›ืช ืงื‘ืฆื™ื ืœืงืจื™ืื”-ื›ืชื™ื‘ื” ืขืœ ื’ื‘ื™ ื›ืœ ื”ืฉื›ื‘ื•ืช ืฉืžืชื—ืช. ื–ื” ื”ืžืงื•ื ืฉื‘ื• ื™ืคืขืœื• ื›ืœ ื”ืชื”ืœื™ื›ื™ื ืฉืื ื• ืจื•ืฆื™ื ืฉื”-Docker ืฉืœื ื• ื™ืคืขื™ืœ.

ื›ืืฉืจ Docker ืžืชื—ื™ืœ ืœืจืืฉื•ื ื” ืžื™ื›ืœ, ืฉื›ื‘ืช ื”ืงืจื™ืื”-ื›ืชื™ื‘ื” ื”ืจืืฉื•ื ื™ืช ืจื™ืงื”. ื›ืืฉืจ ืžืชืจื—ืฉื™ื ืฉื™ื ื•ื™ื™ื, ื”ื ืžื•ื—ืœื™ื ืขืœ ืฉื›ื‘ื” ื–ื•; ืœื“ื•ื’ืžื”, ืื ื‘ืจืฆื•ื ืš ืœืฉื ื•ืช ืงื•ื‘ืฅ, ื”ืงื•ื‘ืฅ ื”ื–ื” ื™ื•ืขืชืง ืžื”ืฉื›ื‘ื” ืœืงืจื™ืื” ื‘ืœื‘ื“ ืœืžื˜ื” ืœืฉื›ื‘ืช ื”ืงืจื™ืื”-ื›ืชื™ื‘ื”.
ื”ื’ืจืกื” ืœืงืจื™ืื” ื‘ืœื‘ื“ ืฉืœ ื”ืงื•ื‘ืฅ ืขื“ื™ื™ืŸ ืงื™ื™ืžืช, ืืš ื›ืขืช ื”ื™ื ืžื•ืกืชืจืช ืžืชื—ืช ืœืขื•ืชืง. ื ืคื—ื™ื ืžืฉืžืฉื™ื ืœืื—ืกื•ืŸ ื ืชื•ื ื™ื, ืœืœื ืงืฉืจ ืœืžื—ื–ื•ืจ ื”ื—ื™ื™ื ืฉืœ ื”ืžื™ื›ืœ. ื ืคื—ื™ื ืžืืชื—ืœื™ื ื›ืืฉืจ ื”ืžื™ื›ืœ ื ื•ืฆืจ.

ืื™ืš ื”ืชืžื•ื ื” ืงืฉื•ืจื” ืœืžื™ื›ืœ?

ืชืžื•ื ื” - ื”ืžืจื›ื™ื‘ ื”ืขื™ืงืจื™ ืขื‘ื•ืจ ื›ืœ ืžื™ื›ืœ. ื”ืชืžื•ื ื” ื ื•ืฆืจืช ืžืชื•ืš Dockerfile ืฉื ื•ืกืฃ ืœืคืจื•ื™ืงื˜ ื•ื”ื™ื ืงื‘ื•ืฆื” ืฉืœ ืžืขืจื›ื•ืช ืงื‘ืฆื™ื (ืฉื›ื‘ื•ืช) ืฉื›ื‘ื•ืช ื–ื• ืขืœ ื’ื‘ื™ ื–ื• ื•ืžืงื•ื‘ืฆื•ืช ื™ื—ื“, ืœืงืจื™ืื” ื‘ืœื‘ื“; ื”ืžืกืคืจ ื”ืžืจื‘ื™ ืฉืœ ืฉื›ื‘ื•ืช ื”ื•ื 127.

ื‘ืœื™ื‘ื” ืฉืœ ื›ืœ ืชืžื•ื ื” ื ืžืฆืืช ืชืžื•ื ืช ื‘ืกื™ืก, ื”ืžืฆื•ื™ื ืช ื‘ืคืงื•ื“ืช FROM - ื ืงื•ื“ืช ื”ื›ื ื™ืกื” ื‘ืขืช ื‘ื ื™ื™ืช ืชืžื•ื ืช Dockerfile. ื›ืœ ืฉื›ื‘ื” ื”ื™ื ืฉื›ื‘ื” ืœืงืจื™ืื” ื‘ืœื‘ื“ ื•ืžื™ื•ืฆื’ืช ืขืœ ื™ื“ื™ ืคืงื•ื“ื” ื™ื—ื™ื“ื” ืฉืžืฉื ื” ืืช ืžืขืจื›ืช ื”ืงื‘ืฆื™ื, ื”ื›ืชื•ื‘ื” ื‘-Dockerfile.
ื›ื“ื™ ืœืฉืœื‘ ืืช ื”ืฉื›ื‘ื•ืช ื”ืœืœื• ืœืชืžื•ื ื” ืื—ืช, Docker ืžืฉืชืžืฉ ื‘ืžืขืจื›ืช ื”ืงื‘ืฆื™ื ื”ืžืชืงื“ืžืช ืžืจื•ื‘ื” ืฉื›ื‘ื•ืช ืฉืœ Union (AuFS ื‘ื ื•ื™ื” ืขืœ ื’ื‘ื™ UnionFS), ื”ืžืืคืฉืจืช ืฉื›ื‘ื” ืฉืงื•ืคื” ืฉืœ ืงื‘ืฆื™ื ื•ืกืคืจื™ื•ืช ืฉื•ื ื•ืช ืžืฉื›ื‘ื•ืช ืงื‘ืฆื™ื ืฉื•ื ื•ืช, ื•ื™ื•ืฆืจืช ืžืขืจื›ืช ืงื‘ืฆื™ื ืžื’ื•ื‘ืฉืช.

ืฉื›ื‘ื•ืช ืžื›ื™ืœื•ืช ืžื˜ื ื ืชื•ื ื™ื ื”ืžืืคืฉืจื™ื ืœืš ืœืื—ืกืŸ ืžื™ื“ืข ืงืฉื•ืจ ืขืœ ื›ืœ ืฉื›ื‘ื” ื‘ืžื”ืœืš ื–ืžืŸ ื”ืจื™ืฆื” ื•ื–ืžืŸ ื”ื‘ื ื™ื™ื”. ื›ืœ ืฉื›ื‘ื” ืžื›ื™ืœื” ืงื™ืฉื•ืจ ืœืฉื›ื‘ื” ื”ื‘ืื”; ืื ืœืฉื›ื‘ื” ืื™ืŸ ืงื™ืฉื•ืจ, ื”ื™ื ื”ืฉื›ื‘ื” ื”ืขืœื™ื•ื ื” ื‘ื™ื•ืชืจ ื‘ืชืžื•ื ื”.

ื”-Dockerfile ืขืฉื•ื™ ืœื”ื›ื™ืœ ืคืงื•ื“ื•ืช ื›ื’ื•ืŸ:

  • FROM - ื ืงื•ื“ืช ื›ื ื™ืกื” ื‘ืขืช ื™ืฆื™ืจืช ืชืžื•ื ื”;
  • MAINTAINER - ืฉื ื‘ืขืœ ื”ืชืžื•ื ื”;
  • RUN - ื‘ื™ืฆื•ืข ืคืงื•ื“ื” ื‘ืžื”ืœืš ื”ืจื›ื‘ืช ืชืžื•ื ื”;
  • ADD - ื”ืขืชืงืช ืงื•ื‘ืฅ ื”ืžืืจื— ืœืชืžื•ื ื” ื—ื“ืฉื”; ืื ืชืฆื™ื™ืŸ ืืช ื›ืชื•ื‘ืช ื”-URL ืฉืœ ื”ืงื•ื‘ืฅ, Docker ื™ื•ืจื™ื“ ืื•ืชื• ืœืกืคืจื™ื™ื” ืฉืฆื•ื™ื ื”;
  • ENV - ืžืฉืชื ื™ ืกื‘ื™ื‘ื”;
  • CMD - ืžืชื—ื™ืœ ื™ืฆื™ืจืช ืžื™ื›ืœ ื—ื“ืฉ ื”ืžื‘ื•ืกืก ืขืœ ื”ืชืžื•ื ื”;
  • ENTRYPOINT - ื”ืคืงื•ื“ื” ืžื‘ื•ืฆืขืช ื›ืืฉืจ ื”ืžื™ื›ืœ ืžืชื—ื™ืœ.
  • WORKDIR ื”ื™ื ืกืคืจื™ื™ืช ื”ืขื‘ื•ื“ื” ืœื‘ื™ืฆื•ืข ืคืงื•ื“ืช CMD.
  • USER - ืžื’ื“ื™ืจ ืืช ื”-UID ืขื‘ื•ืจ ื”ืžื™ื›ืœ ืฉื ื•ืฆืจ ืขืœ ืกืžืš ื”ืชืžื•ื ื”.
  • VOLUME - ืžืขืœื” ืืช ืกืคืจื™ื™ืช ื”ืžืืจื— ืœืชื•ืš ื”ืงื•ื ื˜ื™ื™ื ืจ.
  • EXPOSE ื”ื•ื ืงื‘ื•ืฆื” ืฉืœ ื™ืฆื™ืื•ืช ืฉื”ืื–ื™ื ื• ืœื”ืŸ ื‘ืžื™ื›ืœ.

ืื™ืš UnionFS ืขื•ื‘ื“?

UnionFS - ืžืขืจื›ืช ืงื‘ืฆื™ื ืžื—ืกื ื™ืช ืฉื™ืจื•ืช (FS) ืขื‘ื•ืจ ืœื™ื ื•ืงืก ื•- FreeBSD. FS ื–ื” ืžื™ื™ืฉื ืžื ื’ื ื•ืŸ ื”ืขืชืง-ืขืœ-ื›ืชื™ื‘ื” (Copy-On-Write, COW). ื™ื—ื™ื“ืช ื”ืขื‘ื•ื“ื” ืฉืœ UnionFS ื”ื™ื ืฉื›ื‘ื”; ื›ืœ ืฉื›ื‘ื” ืฆืจื™ื›ื” ืœื”ื™ื—ืฉื‘ ื›ืžืขืจื›ืช ืงื‘ืฆื™ื ื ืคืจื“ืช ืžืœืื” ืขื ื”ื™ืจืจื›ื™ื” ืฉืœ ืกืคืจื™ื•ืช ืžื”ืฉื•ืจืฉ ืขืฆืžื•. UnionFS ื™ื•ืฆืจ ืื™ื—ื•ื“ mount ืขื‘ื•ืจ ืžืขืจื›ื•ืช ืงื‘ืฆื™ื ืื—ืจื•ืช ื•ืžืืคืฉืจ ืœืฉืœื‘ ืงื‘ืฆื™ื ื•ืกืคืจื™ื•ืช ืžืžืขืจื›ื•ืช ืงื‘ืฆื™ื ืฉื•ื ื•ืช (ื”ื ืงืจืื•ืช forks) ืœืžืขืจื›ืช ืงื‘ืฆื™ื ืงื•ื”ืจื ื˜ื™ืช ืื—ืช, ื‘ืฉืงื™ืคื•ืช ืœืžืฉืชืžืฉ.

ื”ืชื•ื›ืŸ ืฉืœ ืกืคืจื™ื•ืช ืขื ืื•ืชื ื ืชื™ื‘ื™ื ื™ื•ืคื™ืข ื™ื—ื“ ื‘ืกืคืจื™ื” ืžืื•ื—ื“ืช ืื—ืช (ื‘ืžืจื—ื‘ ืฉืžื•ืช ื‘ื•ื“ื“) ืฉืœ ืžืขืจื›ืช ื”ืงื‘ืฆื™ื ื”ืžืชืงื‘ืœืช.

UnionFS ืžืฉืœื‘ ืฉื›ื‘ื•ืช ื”ืžื‘ื•ืกืกื•ืช ืขืœ ื”ืขืงืจื•ื ื•ืช ื”ื‘ืื™ื:

  • ืื—ืช ื”ืฉื›ื‘ื•ืช ื”ื•ืคื›ืช ืœืฉื›ื‘ื” ื‘ืจืžื” ื”ืขืœื™ื•ื ื”, ื”ืฉื›ื‘ื” ื”ืฉื ื™ื™ื” ื•ื”ืฉื›ื‘ื•ืช ื”ื‘ืื•ืช ื”ื•ืคื›ื•ืช ืœืฉื›ื‘ื•ืช ื‘ืจืžื” ื”ืชื—ืชื•ื ื”;
  • ืื•ื‘ื™ื™ืงื˜ื™ ืฉื›ื‘ื” ื–ืžื™ื ื™ื ืœืžืฉืชืžืฉ "ืžืœืžืขืœื” ืœืžื˜ื”", ื›ืœื•ืžืจ. ืื ื”ืื•ื‘ื™ื™ืงื˜ ื”ืžื‘ื•ืงืฉ ื ืžืฆื ื‘ืฉื›ื‘ื” "ื”ืขืœื™ื•ื ื”", ื”ื•ื ืžื•ื—ื–ืจ, ืœืœื ืงืฉืจ ืœื ื•ื›ื—ื•ืช ืฉืœ ืื•ื‘ื™ื™ืงื˜ ื‘ืขืœ ืฉื ื–ื”ื” ื‘ืฉื›ื‘ื” ื”"ืชื—ืชื•ื ื”"; ืื—ืจืช ืžื•ื—ื–ืจ ื”ืื•ื‘ื™ื™ืงื˜ ืฉืœ ื”ืฉื›ื‘ื” ื”"ืชื—ืชื•ื ื”"; ืื ื”ืื•ื‘ื™ื™ืงื˜ ื”ืžื‘ื•ืงืฉ ืœื ืฉื ื•ืœื ืฉื, ื”ืฉื’ื™ืื” "ืื™ืŸ ืงื•ื‘ืฅ ืื• ืกืคืจื™ื™ื” ื›ืืœื”" ืžื•ื—ื–ืจืช;
  • ืฉื›ื‘ืช ื”ืขื‘ื•ื“ื” ื”ื™ื "ื”ืขืœื™ื•ืŸ", ื›ืœื•ืžืจ, ื›ืœ ืคืขื•ืœื•ืช ื”ืžืฉืชืžืฉ ืœืฉื™ื ื•ื™ ื ืชื•ื ื™ื ืžืฉืชืงืคื•ืช ืจืง ื‘ืฉื›ื‘ื” ื‘ืจืžื” ื”ืขืœื™ื•ื ื”, ืžื‘ืœื™ ืœื”ืฉืคื™ืข ืขืœ ื”ืชื•ื›ืŸ ืฉืœ ื”ืฉื›ื‘ื•ืช ืฉืœ ื”ืจืžื•ืช ื”ื ืžื•ื›ื•ืช.

Docker ื”ื™ื ื”ื˜ื›ื ื•ืœื•ื’ื™ื” ื”ื ืคื•ืฆื” ื‘ื™ื•ืชืจ ืœืฉื™ืžื•ืฉ ื‘ืงื•ื ื˜ื™ื™ื ืจื™ื ืœื”ืคืขืœืช ื™ื™ืฉื•ืžื™ื. ื–ื” ื”ืคืš ืœืกื˜ื ื“ืจื˜ ื‘ืชื—ื•ื, ืชื•ืš ื”ืชื‘ืกืกื•ืช ืขืœ cgroups ื•ืžืจื—ื‘ื™ ื”ืฉืžื•ืช ืฉืžืกืคืงื™ื ืœื™ื‘ืช ืœื™ื ื•ืงืก.

Docker ืžืืคืฉืจ ืœื ื• ืœืคืจื•ืก ื™ื™ืฉื•ืžื™ื ื‘ืžื”ื™ืจื•ืช ื•ืœื ืฆืœ ืืช ืžืขืจื›ืช ื”ืงื‘ืฆื™ื ื‘ืฆื•ืจื” ื”ื˜ื•ื‘ื” ื‘ื™ื•ืชืจ ืขืœ ื™ื“ื™ ืคื™ืฆื•ืœ ืœื™ื‘ืช ืžืขืจื›ืช ื”ื”ืคืขืœื” ื‘ื™ืŸ ื›ืœ ื”ืงื•ื ื˜ื™ื™ื ืจื™ื, ื”ืคื•ืขืœื™ื ื›ืชื”ืœื™ื›ื™ ืžืขืจื›ืช ื”ืคืขืœื” ื ืคืจื“ื™ื.

ืžืงื•ืจ: www.habr.com

ื”ื•ืกืคืช ืชื’ื•ื‘ื”