เปเบฅเปˆเบ™เบฅเบฐเบšเบปเบšเปƒเบ™เบ–เบฑเบ‡

เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบฒเบกเบซเบปเบงเบ‚เปเป‰เบ‚เบญเบ‡เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ systemd เปƒเบ™ containers เบชเปเบฒเบฅเบฑเบšเป€เบงเบฅเบฒเบ”เบปเบ™เบ™เบฒเบ™. เบเบฑเบšเป„เบ›เปƒเบ™เบ›เบต 2014, เบงเบดเบชเบฐเบงเบฐเบเบญเบ™เบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ Daniel Walsh เบ‚เบฝเบ™เบšเบปเบ”เบ„เบงเบฒเบก เปเบฅเปˆเบ™เบฅเบฐเบšเบปเบšเบžเบฒเบเปƒเบ™ Docker Container, เปเบฅเบฐเบชเบญเบ‡เบชเบฒเบกเบ›เบตเบ•เปเปˆเบกเบฒ - เบญเบทเปˆเบ™, เป€เบŠเบดเปˆเบ‡เป€เบญเบตเป‰เบ™เบงเปˆเบฒ เปเบฅเปˆเบ™เบฅเบฐเบšเบปเบšเบขเบนเปˆเปƒเบ™เบ–เบฑเบ‡เบ—เบตเปˆเบšเปเปˆเบกเบตเบชเบดเบ”เบ—เบดเบžเบดเป€เบชเบ”, เปƒเบ™โ€‹เบ™เบฑเป‰เบ™โ€‹เบ—เปˆเบฒเบ™โ€‹เป„เบ”เป‰โ€‹เบเปˆเบฒเบงโ€‹เบงเปˆเบฒโ€‹เบชเบฐโ€‹เบ–เบฒโ€‹เบ™เบฐโ€‹เบเบฒเบ™โ€‹เบšเปเปˆโ€‹เป„เบ”เป‰โ€‹เบ›เบฑเบšโ€‹เบ›เบธเบ‡โ€‹เบซเบผเบฒเบโ€‹. เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐ, เบฅเบฒเบงเบ‚เบฝเบ™เบงเปˆเบฒ "เบซเบ™เป‰เบฒเป€เบชเบเบ”เบฒเบ, เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบชเบญเบ‡เบ›เบตเบ•เปเปˆเบกเบฒ, เบ–เป‰เบฒเบ—เปˆเบฒเบ™ google "เบฅเบฐเบšเบปเบš Docker", เบชเบดเปˆเบ‡เบ—เปเบฒเบญเบดเบ”เบ—เบตเปˆเป€เบเบตเบ”เบ‚เบทเป‰เบ™เปเบกเปˆเบ™เบšเบปเบ”เบ„เบงเบฒเบกเป€เบเบปเปˆเบฒเบ‚เบญเบ‡เบฅเบฒเบง. เบชเบฐเบ™เบฑเป‰เบ™เบกเบฑเบ™เป€เบ–เบดเบ‡เป€เบงเบฅเบฒเบ—เบตเปˆเบˆเบฐเบ›เปˆเบฝเบ™เปเบ›เบ‡เบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡." เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบชเบปเบ™เบ—เบฐเบ™เบฒเปเบฅเป‰เบง เบ‚เปเป‰เบ‚เบฑเบ”เปเบเปˆเบ‡เบฅเบฐเบซเบงเปˆเบฒเบ‡ Docker เปเบฅเบฐเบœเบนเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒเบฅเบฐเบšเบปเบš.

เปเบฅเปˆเบ™เบฅเบฐเบšเบปเบšเปƒเบ™เบ–เบฑเบ‡

เปƒเบ™เบšเบปเบ”เบ„เบงเบฒเบกเบ™เบตเป‰เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบชเบฐเปเบ”เบ‡เบชเบดเปˆเบ‡เบ—เบตเปˆเบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เปƒเบ™เป„เบฅเบเบฐเป€เบงเบฅเบฒเปเบฅเบฐเบงเบดเบ—เบตเบ—เบตเปˆ Podman เบชเบฒเบกเบฒเบ”เบŠเปˆเบงเบเบžเบงเบเป€เบฎเบปเบฒเปƒเบ™เป€เบฅเบทเปˆเบญเบ‡เบ™เบตเป‰.

เบกเบตเบซเบผเบฒเบเป€เบซเบ”เบœเบปเบ™เปƒเบ™เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™ systemd เบžเบฒเบเปƒเบ™ container, เป€เบŠเบฑเปˆเบ™:

  1. Multiservice containers โ€“ เบซเบผเบฒเบเบ„เบปเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เบ”เบถเบ‡เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เบซเบผเบฒเบเบญเบฑเบ™เบ‚เบญเบ‡เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบญเบญเบเบˆเบฒเบเป€เบ„เบทเปˆเบญเบ‡ virtual เปเบฅเบฐเปเบฅเปˆเบ™เบกเบฑเบ™เบขเบนเปˆเปƒเบ™เบ–เบฑเบ‡. เบกเบฑเบ™เบˆเบฐเป€เบ›เบฑเบ™เบเบฒเบ™เบ”เบตเบเบงเปˆเบฒ, เปเบ™เปˆเบ™เบญเบ™, เบ—เบตเปˆเบˆเบฐเบ—เปเบฒเบฅเบฒเบเบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ microservices, เปเบ•เปˆเบšเปเปˆเปเบกเปˆเบ™เบ—เบธเบเบ„เบปเบ™เบฎเบนเป‰เบงเบดเบ—เบตเป€เบฎเบฑเบ”เปเบ™เบงเบ™เบตเป‰เบซเบผเบทเบžเบฝเบ‡เปเบ•เปˆเบšเปเปˆเบกเบตเป€เบงเบฅเบฒ. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบเบฒเบ™เปƒเบŠเป‰เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเป€เบ›เบฑเบ™เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ—เบตเปˆเป€เบ›เบตเบ”เบ•เบปเบงเป‚เบ”เบ systemd เบˆเบฒเบเป„เบŸเบฅเปŒเบซเบ™เปˆเบงเบเบ™เบฑเป‰เบ™เป€เบฎเบฑเบ”เปƒเบซเป‰เบ„เบงเบฒเบกเบฎเบนเป‰เบชเบถเบเบ—เบตเปˆเบชเบปเบกเบšเบนเบ™เปเบšเบš.
  2. เป„เบŸเบฅเปŒเบซเบ™เปˆเบงเบเบ‡เบฒเบ™เบฅเบฐเบšเบปเบš - เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เบชเปˆเบงเบ™เปƒเบซเบเปˆเบ—เบตเปˆเปเบฅเปˆเบ™เบžเบฒเบเปƒเบ™เบเปˆเบญเบ‡เบšเบฑเบ™เบˆเบธเปเบกเปˆเบ™เบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เบˆเบฒเบเบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเป€เบ„เบตเบเปเบฅเปˆเบ™เบขเบนเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡ virtual เบซเบผเบทเบ•เบปเบงเบˆเบดเบ‡. เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบกเบตเป„เบŸเบฅเปŒเบซเบ™เปˆเบงเบเบ‡เบฒเบ™เบ—เบตเปˆเบ–เบทเบเบ‚เบฝเบ™เป„เบงเป‰เบชเปเบฒเบฅเบฑเบšเปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบฅเบฐเป€เบ‚เบปเป‰เบฒเปƒเบˆเบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเบ„เบงเบ™เบˆเบฐเบ–เบทเบเป€เบ›เบตเบ”เบ•เบปเบงเปเบ™เบงเปƒเบ”. เบชเบฐเบ™เบฑเป‰เบ™เบกเบฑเบ™เบเบฑเบ‡เบ”เบตเบเบงเปˆเบฒเบ—เบตเปˆเบˆเบฐเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เป‚เบ”เบเปƒเบŠเป‰เบงเบดเบ—เบตเบเบฒเบ™เบ—เบตเปˆเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™, เปเบ—เบ™เบ—เบตเปˆเบˆเบฐ hack เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™ init เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เป€เบญเบ‡.
  3. Systemd เป€เบ›เบฑเบ™เบœเบนเป‰เบˆเบฑเบ”เบเบฒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™. เบกเบฑเบ™เบ„เบธเป‰เบกเบ„เบญเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™ (เบ›เบดเบ”เบฅเบปเบ‡, เป€เบ›เบตเบ”เบšเปเบฅเบดเบเบฒเบ™เปƒเบซเบกเปˆ, เบซเบผเบทเบ‚เป‰เบฒเบ‚เบฐเบšเบงเบ™เบเบฒเบ™ zombie) เบ”เบตเบเบงเปˆเบฒเป€เบ„เบทเปˆเบญเบ‡เบกเบทเบญเบทเปˆเบ™เป†.

เบ—เบตเปˆเป€เบงเบปเป‰เบฒเบงเปˆเบฒ, เบกเบตเบซเบผเบฒเบเป€เบซเบ”เบœเบปเบ™เบ—เบตเปˆเบˆเบฐเบšเปเปˆเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™ systemd เปƒเบ™ containers. เบญเบฑเบ™เบ•เบปเป‰เบ™เบ•เปเปเบกเปˆเบ™เบงเปˆเบฒ systemd / journald เบ„เบงเบšเบ„เบธเบกเบœเบปเบ™เบœเบฐเบฅเบดเบ”เบ‚เบญเบ‡เบšเบฑเบ™เบˆเบธ, เปเบฅเบฐเป€เบ„เบทเปˆเบญเบ‡เบกเบทเป€เบŠเบฑเปˆเบ™: Kubernetes เบซเบผเบท openshift เบ„เบฒเบ”เบซเบงเบฑเบ‡เบงเปˆเบฒเบšเบฑเบ™เบˆเบธเบˆเบฐเบ‚เบฝเบ™เบšเบฑเบ™เบ—เบถเบเป‚เบ”เบเบเบปเบ‡เบเบฑเบš stdout เปเบฅเบฐ stderr. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบเปเบฒเบฅเบฑเบ‡เบˆเบฐเบˆเบฑเบ”เบเบฒเบ™เบ•เบนเป‰เบ„เบญเบ™เป€เบ—เบ™เป€เบ™เบตเป‚เบ”เบเบœเปˆเบฒเบ™เป€เบ„เบทเปˆเบญเบ‡เบกเบท orchestration เบ”เบฑเปˆเบ‡เบ—เบตเปˆเป„เบ”เป‰เบเปˆเบฒเบงเบกเบฒเบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡, เบ—เปˆเบฒเบ™เบ„เบงเบ™เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบขเปˆเบฒเบ‡เบˆเบดเบ‡เบˆเบฑเบ‡เบเบฑเบšเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบ•เบนเป‰เบ„เบญเบ™เป€เบ—เบ™เป€เบ™เบตเบ—เบตเปˆเบญเบตเบ‡เปƒเบชเปˆเบฅเบฐเบšเบปเบš. เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบœเบนเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒ Docker เปเบฅเบฐ Moby เบกเบฑเบเบˆเบฐเบ–เบทเบเบ„เบฑเบ”เบ„เป‰เบฒเบ™เบขเปˆเบฒเบ‡เปเบ‚เบ‡เปเบฎเบ‡เบ•เปเปˆเบเบฑเบšเบเบฒเบ™เปƒเบŠเป‰ systemd เปƒเบ™ containers.

เบเบฒเบ™เบกเบฒเบ‚เบญเบ‡ Podman

เบžเบงเบเป€เบฎเบปเบฒเบเบดเบ™เบ”เบตเบ—เบตเปˆเบˆเบฐเบฅเบฒเบเบ‡เบฒเบ™เบงเปˆเบฒเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เป„เบ”เป‰เบเป‰เบฒเบงเป„เบ›เบ‚เป‰เบฒเบ‡เบซเบ™เป‰เบฒเปƒเบ™เบ—เบตเปˆเบชเบธเบ”. เบ—เบตเบกเบ‡เบฒเบ™เบ—เบตเปˆเบฎเบฑเบšเบœเบดเบ”เบŠเบญเบšเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เปเบฅเปˆเบ™เบ•เบนเป‰เบ„เบญเบ™เป€เบ—เบ™เป€เบ™เบตเบขเบนเปˆ Red Hat เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบžเบฑเบ”เบ—เบฐเบ™เบฒ เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเบšเบฑเบ™เบˆเบธเบ‚เบญเบ‡เบ—เปˆเบฒเบ™เป€เบญเบ‡. เบฅเบฒเบงเป„เบ”เป‰เบฎเบฑเบšเบŠเบทเปˆ podman เปเบฅเบฐเบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเป€เบชเบฑเป‰เบ™เบ„เปเบฒเบชเบฑเปˆเบ‡เบ”เบฝเบงเบเบฑเบ™ (CLI) เป€เบ›เบฑเบ™ Docker. เปเบฅเบฐเป€เบเบทเบญเบšเบ—เบธเบเบ„เปเบฒเบชเบฑเปˆเบ‡ Docker เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เปƒเบ™ Podman เปƒเบ™เบ—เบฒเบ‡เบ”เบฝเบงเบเบฑเบ™. เบžเบงเบเป€เบฎเบปเบฒเบกเบฑเบเบˆเบฐเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบชเปเบฒเบกเบฐเบ™เบฒ, เป€เบŠเบดเปˆเบ‡เบ›เบฐเบˆเบธเบšเบฑเบ™เป€เบญเบตเป‰เบ™เบงเปˆเบฒ เบ›เปˆเบฝเบ™ Docker เป€เบ›เบฑเบ™ Podman, เปเบฅเบฐเบชเบฐเป„เบฅเป‰เบ—เปเบฒเบญเบดเบ”เบฎเบฝเบเบฎเป‰เบญเบ‡เปƒเบซเป‰เบ‚เบฝเบ™: alias docker=podman.

เบซเบผเบฒเบเบ„เบปเบ™เป€เบฎเบฑเบ”เปเบ™เบงเบ™เบตเป‰.

Podman เบ‚เบญเบ‡เบ‚เป‰เบญเบเปเบฅเบฐเบ‚เป‰เบญเบเบšเปเปˆเบกเบตเบงเบดเบ—เบตเบ—เบตเปˆเบˆเบฐเบ•เป‰เบฒเบ™เบเบฑเบš containers เบ—เบตเปˆเบญเบตเบ‡เปƒเบชเปˆเบฅเบฐเบšเบปเบš. เบซเบผเบฑเบ‡เบˆเบฒเบเบ—เบตเปˆเบ—เบฑเบ‡เบซเบกเบปเบ”, Systemd เปเบกเปˆเบ™เบฅเบฐเบšเบปเบšเบเปˆเบญเบ Linux init เบ—เบตเปˆเปƒเบŠเป‰เบ—เบปเปˆเบงเป„เบ›เบ—เบตเปˆเบชเบธเบ”, เปเบฅเบฐเบเบฒเบ™เบšเปเปˆเปƒเบซเป‰เบกเบฑเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบขเปˆเบฒเบ‡เบ–เบทเบเบ•เป‰เบญเบ‡เปƒเบ™ containers เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบเบฒเบ™เบšเปเปˆเบชเบปเบ™เปƒเบˆเบงเปˆเบฒเบ›เบฐเบŠเบฒเบŠเบปเบ™เบซเบผเบฒเบเบžเบฑเบ™เบ„เบปเบ™เบกเบตเบ„เบงเบฒเบกเบ„เบธเป‰เบ™เป€เบ„เบตเบเบเบฑเบš container เปเบฅเปˆเบ™เปเบ™เบงเปƒเบ”.

Podman เบฎเบนเป‰เบงเปˆเบฒเบˆเบฐเป€เบฎเบฑเบ”เปเบ™เบงเปƒเบ”เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เปƒเบซเป‰เบฅเบฐเบšเบปเบšเป€เบฎเบฑเบ”เบงเบฝเบเบขเปˆเบฒเบ‡เบ–เบทเบเบ•เป‰เบญเบ‡เบขเบนเปˆเปƒเบ™เบ–เบฑเบ‡. เบกเบฑเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เบชเบดเปˆเบ‡เบ•เปˆเบฒเบ‡เป†เป€เบŠเบฑเปˆเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡ tmpfs เปƒเบ™ /run เปเบฅเบฐ /tmp. เบ™เบฒเบ‡เบกเบฑเบเปƒเบซเป‰เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก "containerized" เป€เบ›เบตเบ”เปƒเบŠเป‰เบ‡เบฒเบ™เปเบฅเบฐเบ„เบฒเบ”เบซเบงเบฑเบ‡เบงเปˆเบฒเบเบฒเบ™เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ‚เบฝเบ™เบชเปˆเบงเบ™เบ‚เบญเบ‡เบ™เบฒเบ‡เบ‚เบญเบ‡ cgroup directory เปเบฅเบฐเป‚เบŸเบ™เป€เบ”เบต /var/log/journald.

เป€เบกเบทเปˆเบญเบ—เปˆเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™ container เบ—เบตเปˆเบ„เปเบฒเบชเบฑเปˆเบ‡เบ—เปเบฒเบญเบดเบ”เปเบกเปˆเบ™ init เบซเบผเบท systemd, Podman เบˆเบฐ configure tmpfs เปเบฅเบฐ Cgroups เป‚เบ”เบเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เป€เบžเบทเปˆเบญเบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบงเปˆเบฒเบฅเบฐเบšเบปเบšเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป‚เบ”เบเบšเปเปˆเบกเบตเบšเบฑเบ™เบซเบฒ. เป€เบžเบทเปˆเบญเบšเบฅเบฑเบญเบเป‚เปเบ”เป€เบ›เบตเบ”เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เบ™เบตเป‰, เปƒเบซเป‰เปƒเบŠเป‰เบ•เบปเบงเป€เบฅเบทเบญเบ --systemd=false. เบเบฐเบฅเบธเบ™เบฒเบชเบฑเบ‡เป€เบเบ”เบงเปˆเบฒ Podman เบžเบฝเบ‡เปเบ•เปˆเปƒเบŠเป‰เป‚เบซเบกเบ” systemd เป€เบกเบทเปˆเบญเบกเบฑเบ™เป€เบซเบฑเบ™เบงเปˆเบฒเบกเบฑเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡ systemd เบซเบผเบท init.

เบ™เบตเป‰เปเบกเปˆเบ™เบšเบปเบ”เบ„เบฑเบ”เบซเบเปเป‰เบˆเบฒเบเบ„เบนเปˆเบกเบท:

เบœเบนเป‰เบŠเบฒเบ podman เปเบฅเปˆเบ™
...

โ€“systemd=true|false

เปเบฅเปˆเบ™เบเปˆเบญเบ‡เบšเบฑเบ™เบˆเบธเบขเบนเปˆเปƒเบ™เป‚เบซเบกเบ”เบฅเบฐเบšเบปเบš. เป€เบ›เบตเบ”เปƒเบŠเป‰เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™.

เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡ systemd เบซเบผเบท init เบžเบฒเบเปƒเบ™ container, Podman เบˆเบฐ configure เบˆเบธเบ” tmpfs mount เปƒเบ™เป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบ•เปเปˆเป„เบ›เบ™เบตเป‰:

/run, /run/lock, /tmp, /sys/fs/cgroup/systemd, /var/lib/journal

เบ™เบญเบเบˆเบฒเบเบ™เบตเป‰เบชเบฑเบ™เบเบฒเบ™เบขเบธเบ”เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบˆเบฐเป€เบ›เบฑเบ™ SIGRTMIN+3.

เบ—เบฑเบ‡เบซเบกเบปเบ”เบ™เบตเป‰เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰ systemd เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบขเบนเปˆเปƒเบ™เบ–เบฑเบ‡เบ›เบดเบ”เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เบ”เบฑเบ”เปเบ›เบ‡เปƒเบ”เป†.

เปเบฒเบเป€เบซเบ”: systemd เบžเบฐเบเบฒเบเบฒเบกเบ‚เบฝเบ™เปƒเบชเปˆเบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ cgroup. เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, SELinux เบ›เป‰เบญเบ‡เบเบฑเบ™เบšเปเปˆเปƒเบซเป‰ containers เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ™เบตเป‰เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™. เป€เบžเบทเปˆเบญเป€เบ›เบตเบ”เปƒเบŠเป‰เบ‡เบฒเบ™เบเบฒเบ™เบ‚เบฝเบ™, เป€เบ›เบตเบ”เปƒเบŠเป‰เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™ boolean container_manage_cgroup:

setsebool -P container_manage_cgroup true

เบ•เบญเบ™เบ™เบตเป‰เป€เบšเบดเปˆเบ‡เบงเปˆเบฒ Dockerfile เบกเบตเบฅเบฑเบเบชเบฐเบ™เบฐเปเบ™เบงเปƒเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เปเบฅเปˆเบ™ systemd เปƒเบ™ container เป‚เบ”เบเปƒเบŠเป‰ Podman:

# cat Dockerfile

FROM fedora

RUN dnf -y install httpd; dnf clean all; systemctl enable httpd

EXPOSE 80

CMD [ "/sbin/init" ]

เบซเบกเบปเบ”โ€‹เป€เบ—เบปเปˆเบฒโ€‹เบ™เบตเป‰.

เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบžเบงเบเป€เบฎเบปเบฒเบ›เบฐเบเบญเบšเบ•เบนเป‰เบ„เบญเบ™เป€เบ—เบ™เป€เบ™เบต:

# podman build -t systemd .

เบžเบงเบเป€เบฎเบปเบฒเบšเบญเบ SELinux เปƒเบซเป‰เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰ systemd เปเบเป‰เป„เบ‚เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ Cgroups:

# setsebool -P container_manage_cgroup true

เป‚เบ”เบเบงเบดเบ—เบตเบ—เบฒเบ‡เบเบฒเบ™, เบ›เบฐเบŠเบฒเบŠเบปเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบผเบฒเบเบฅเบทเบกเบเปˆเบฝเบงเบเบฑเบšเบ‚เบฑเป‰เบ™เบ•เบญเบ™เบ™เบตเป‰. เป‚เบŠเบเบ”เบต, เบญเบฑเบ™เบ™เบตเป‰เบ•เป‰เบญเบ‡เป€เบฎเบฑเบ”เบžเบฝเบ‡เปเบ•เปˆเบ„เบฑเป‰เบ‡เบ”เบฝเบง เปเบฅเบฐเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบˆเบฐเบ–เบทเบเบšเบฑเบ™เบ—เบถเบเป„เบงเป‰เบซเบผเบฑเบ‡เบˆเบฒเบเบ›เบดเบ”เป€เบ›เบตเบ”เบฅเบฐเบšเบปเบšเบ„เบทเบ™เปƒเปเปˆ.

เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบžเบงเบเป€เบฎเบปเบฒเบžเบฝเบ‡เปเบ•เปˆเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบšเบฑเบ™เบˆเบธ:

# podman run -ti -p 80:80 systemd

systemd 239 running in system mode. (+PAM +AUDIT +SELINUX +IMA -APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD +IDN2 -IDN +PCRE2 default-hierarchy=hybrid)

Detected virtualization container-other.

Detected architecture x86-64.

Welcome to Fedora 29 (Container Image)!

Set hostname to <1b51b684bc99>.

Failed to install release agent, ignoring: Read-only file system

File /usr/lib/systemd/system/systemd-journald.service:26 configures an IP firewall (IPAddressDeny=any), but the local system does not support BPF/cgroup based firewalling.

Proceeding WITHOUT firewalling in effect! (This warning is only shown for the first loaded unit using IP firewalling.)

[  OK ] Listening on initctl Compatibility Named Pipe.

[  OK ] Listening on Journal Socket (/dev/log).

[  OK ] Started Forward Password Requests to Wall Directory Watch.

[  OK ] Started Dispatch Password Requests to Console Directory Watch.

[  OK ] Reached target Slices.

โ€ฆ

[  OK ] Started The Apache HTTP Server.

เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เปเบกเปˆเบ™เบ‚เบถเป‰เบ™เปเบฅเบฐเปเบฅเปˆเบ™:

$ curl localhost

<html  xml_lang="en" lang="en">

โ€ฆ

</html>

เปเบฒเบเป€เบซเบ”: เบขเปˆเบฒเบฅเบญเบ‡เปƒเบŠเป‰เปƒเบ™ Docker! เบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™เบ—เปˆเบฒเบ™เบเบฑเบ‡เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป„เบ”เป‰เป€เบ•เบฑเป‰เบ™เบฅเปเบฒเบเบฑเบš tambourine เป€เบžเบทเปˆเบญเป€เบ›เบตเบ”เบ•เบปเบงเบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบšเบฑเบ™เบˆเบธเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบœเปˆเบฒเบ™ daemon. (เบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™ เปเบฅเบฐเปเบžเบฑเบเป€เบเบฑเบ”เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเบˆเบฐเบ•เป‰เบญเบ‡เป€เบฎเบฑเบ”เปƒเบซเป‰เบชเบดเปˆเบ‡เบ™เบตเป‰เป€เบฎเบฑเบ”เบงเบฝเบเป„เบ”เป‰เบขเปˆเบฒเบ‡เบšเปเปˆเบขเบธเบ”เบขเบฑเป‰เบ‡เปƒเบ™ Docker, เบซเบผเบทเบกเบฑเบ™เบˆเบฐเบ•เป‰เบญเบ‡เบ–เบทเบเปเบฅเปˆเบ™เบขเบนเปˆเปƒเบ™เบ–เบฑเบ‡เบ—เบตเปˆเบกเบตเบชเบดเบ”เบ—เบดเบžเบดเป€เบชเบ”. เบชเปเบฒเบฅเบฑเบšเบฅเบฒเบเบฅเบฐเบญเบฝเบ”, เป€เบšเบดเปˆเบ‡. เบšเบปเบ”เบ„เบงเบฒเบก.)

เบชเบญเบ‡เบชเบฒเบกเบชเบดเปˆเบ‡เบ—เบตเปˆเบ”เบตเบซเบผเบฒเบเบเปˆเบฝเบงเบเบฑเบš Podman เปเบฅเบฐ systemd

Podman เป€เบฎเบฑเบ”เบงเบฝเบเบ”เบตเบเบงเปˆเบฒ Docker เปƒเบ™เป„เบŸเบฅเปŒเบซเบ™เปˆเบงเบเบ‡เบฒเบ™เบฅเบฐเบšเบปเบš

เบ–เป‰เบฒเบ•เบนเป‰เบ„เบญเบ™เป€เบ—เบ™เป€เบ™เบตเบ•เป‰เบญเบ‡เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบฅเบฐเบšเบปเบšเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ—เปˆเบฒเบ™เบžเบฝเบ‡เปเบ•เปˆเบชเบฒเบกเบฒเบ”เปƒเบชเปˆเบ„เปเบฒเบชเบฑเปˆเบ‡ Podman เบ—เบตเปˆเป€เบซเบกเบฒเบฐเบชเบปเบกเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เป„เบŸเบฅเปŒเบซเบ™เปˆเบงเบเบ‡เบฒเบ™ systemd, เป€เบŠเบดเปˆเบ‡เบˆเบฐเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เปเบฅเบฐเบ•เบดเบ”เบ•เบฒเบกเบกเบฑเบ™. Podman เปƒเบŠเป‰เบฎเบนเบšเปเบšเบš fork-exec เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™. เปƒเบ™เบ„เปเบฒเบชเบฑเบšเบ•เปˆเบฒเบ‡เป†เบญเบทเปˆเบ™เป†, เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบšเบฑเบ™เบˆเบธเปเบกเปˆเบ™เป€เบ”เบฑเบเบ™เป‰เบญเบเบ‚เบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™ Podman, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบฅเบฐเบšเบปเบšเบชเบฒเบกเบฒเบ”เบ•เบดเบ”เบ•เบฒเบกเบžเบงเบเบกเบฑเบ™เป„เบ”เป‰เบ‡เปˆเบฒเบ.

Docker เปƒเบŠเป‰เบฎเบนเบšเปเบšเบšเป€เบŠเบตเบšเป€เบงเบตเบฅเบนเบเบ„เป‰เบฒ, เปเบฅเบฐเบ„เปเบฒเบชเบฑเปˆเบ‡ Docker CLI เบเบฑเบ‡เบชเบฒเบกเบฒเบ”เบ–เบทเบเบˆเบฑเบ”เปƒเบชเปˆเป‚เบ”เบเบเบปเบ‡เปƒเบ™เป„เบŸเบฅเปŒเบซเบ™เปˆเบงเบ. เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, เป€เบกเบทเปˆเบญเบฅเบนเบเบ„เป‰เบฒ Docker เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฑเบš daemon Docker, เบกเบฑเบ™ (เบฅเบนเบเบ„เป‰เบฒ) เบเบฒเบเป€เบ›เบฑเบ™เบžเบฝเบ‡เปเบ•เปˆเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบญเบทเปˆเบ™เปƒเบ™เบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™ stdin เปเบฅเบฐ stdout. เปƒเบ™เบ—เบฒเบ‡เบเบฑเบšเบเบฑเบ™, systemd เบšเปเปˆเบกเบตเบ„เบงเบฒเบกเบ„เบดเบ”เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบฅเบฐเบซเบงเปˆเบฒเบ‡เบฅเบนเบเบ„เป‰เบฒ Docker เปเบฅเบฐ container เบ—เบตเปˆเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบžเบฒเบเปƒเบ•เป‰เบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเบ‚เบญเบ‡ Docker daemon, เปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบžเบฒเบเปƒเบ™เบฎเบนเบšเปเบšเบšเบ™เบตเป‰, systemd เป‚เบ”เบเบžเบทเป‰เบ™เบ–เบฒเบ™เปเบฅเป‰เบงเบšเปเปˆเบชเบฒเบกเบฒเบ”เบเบงเบ”เบชเบญเบšเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เป„เบ”เป‰.

เบเบณเบฅเบฑเบ‡เป€เบ›เบตเบ”เปƒเบŠเป‰เบฅเบฐเบšเบปเบšเบœเปˆเบฒเบ™เบŠเบฑเบญเบเป€เบเบฑเบ”

Podman เบˆเบฑเบ”เบเบฒเบ™เบเบฒเบ™เป€เบ›เบตเบ”เปƒเบŠเป‰เบ‡เบฒเบ™เบœเปˆเบฒเบ™เบŠเบฑเบญเบเป€เบเบฑเบ”เบขเปˆเบฒเบ‡เบ–เบทเบเบ•เป‰เบญเบ‡. เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒ Podman เปƒเบŠเป‰เบฎเบนเบšเปเบšเบš fork-exec, เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เบชเบปเปˆเบ‡เบ•เปเปˆเบŠเบฑเบญเบเป€เบเบฑเบ”เป„เบ›เบซเบฒเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบšเบฑเบ™เบˆเบธเบฅเบนเบเบ‚เบญเบ‡เบกเบฑเบ™. Docker เบšเปเปˆเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เบชเบดเปˆเบ‡เบ™เบตเป‰เป„เบ”เป‰เป€เบžเบฒเบฐเบงเปˆเบฒเบกเบฑเบ™เปƒเบŠเป‰เบ•เบปเบงเปเบšเบš client-server.

เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™ varlink เบ—เบตเปˆ Podman เปƒเบŠเป‰เป€เบžเบทเปˆเบญเบ•เบดเบ”เบ•เปเปˆเบชเบทเปˆเบชเบฒเบ™เบเบฑเบšเบฅเบนเบเบ„เป‰เบฒเบซเปˆเบฒเบ‡เป„เบเบชเบญเบเบซเบผเบตเบเป€เบžเบทเปˆเบญเบšเบฑเบ™เบˆเบธเปเบกเปˆเบ™เป€เบ›เบตเบ”เปƒเบŠเป‰เบ•เบปเบงเบˆเบดเบ‡เบœเปˆเบฒเบ™เป€เบ•เบปเป‰เบฒเบฎเบฑเบš. เบŠเบธเบ” cockpit-podman, เบฅเบฒเบเบฅเบฑเบเบญเบฑเบเบชเบญเบ™เปƒเบ™ Node.js เปเบฅเบฐเบชเปˆเบงเบ™เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เป‚เบ„เบ‡เบเบฒเบ™ cockpit, เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ›เบฐเบŠเบฒเบŠเบปเบ™เบชเบฒเบกเบฒเบ”เบžเบปเบงเบžเบฑเบ™เบเบฑเบš Podman containers เบœเปˆเบฒเบ™เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเป€เบงเบฑเบšเป„เบŠเบ•เปŒ. web daemon เปเบฅเปˆเบ™ cockpit-podman เบชเบปเปˆเบ‡เบ‚เปเป‰เบ„เบงเบฒเบกเป„เบ›เบซเบฒเป€เบ•เบปเป‰เบฒเบฎเบฑเบš varlink เบ—เบตเปˆเบฅเบฐเบšเบปเบšเบŸเบฑเบ‡. เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, Systemd เป€เบ›เบตเบ”เปƒเบŠเป‰เป‚เบ›เบฃเปเบเบฃเบก Podman เป€เบžเบทเปˆเบญเบฎเบฑเบšเบ‚เปเป‰เบ„เบงเบฒเบก เปเบฅเบฐเป€เบฅเบตเปˆเบกเบˆเบฑเบ”เบเบฒเบ™เบšเบฑเบ™เบˆเบธ. เบเบฒเบ™เป€เบ›เบตเบ”เปƒเบŠเป‰เบ‡เบฒเบ™เบฅเบฐเบšเบปเบšเบœเปˆเบฒเบ™เบŠเบฑเบญเบเป€เบเบฑเบ”เบˆเบฐเบฅเบปเบšเบฅเป‰เบฒเบ‡เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบชเปเบฒเบฅเบฑเบš daemon เบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบขเปˆเบฒเบ‡เบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบ›เบฐเบ•เบดเบšเบฑเบ” APIs เบซเปˆเบฒเบ‡เป„เบเบชเบญเบเบซเบผเบตเบ.

เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเบเปเบฒเบฅเบฑเบ‡เบžเบฑเบ”เบ—เบฐเบ™เบฒเบฅเบนเบเบ„เป‰เบฒ Podman เบญเบทเปˆเบ™เบ—เบตเปˆเป€เบญเบตเป‰เบ™เบงเปˆเบฒ podman-remote, เป€เบŠเบดเปˆเบ‡เบ›เบฐเบ•เบดเบšเบฑเบ” Podman CLI เบ”เบฝเบงเบเบฑเบ™เปเบ•เปˆเป‚เบ—เบซเบฒ varlink เป€เบžเบทเปˆเบญเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบšเบฑเบ™เบˆเบธ. Podman-remote เบชเบฒเบกเบฒเบ”เปเบฅเปˆเบ™เบขเบนเปˆเป€เบ—เบดเบ‡เบชเบธเบ”เบ‚เบญเบ‡ SSH sessions, เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ•เบดเบ”เบ•เปเปˆเบžเบปเบงเบžเบฑเบ™เบขเปˆเบฒเบ‡เบ›เบญเบ”เป„เบžเบเบฑเบš containers เปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เบ•เปˆเบฒเบ‡เป†. เป€เบกเบทเปˆเบญเป€เบงเบฅเบฒเบœเปˆเบฒเบ™เป„เบ›, เบžเบงเบเป€เบฎเบปเบฒเบงเบฒเบ‡เปเบœเบ™เบ—เบตเปˆเบˆเบฐเป€เบ›เบตเบ”เปƒเบŠเป‰ podman-remote เป€เบžเบทเปˆเบญเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™ MacOS เปเบฅเบฐ Windows เบ„เบฝเบ‡เบ„เบนเปˆเบเบฑเบš Linux, เป€เบžเบทเปˆเบญเปƒเบซเป‰เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเปƒเบ™เป€เบงเบ—เบตเป€เบซเบผเบปเปˆเบฒเบ™เบฑเป‰เบ™เบชเบฒเบกเบฒเบ”เปเบฅเปˆเบ™เป€เบ„เบทเปˆเบญเบ‡ virtual Linux เบ—เบตเปˆเบกเบต Podman varlink เปเบฅเปˆเบ™เปเบฅเบฐเบกเบตเบ›เบฐเบชเบปเบšเบเบฒเบ™เบขเปˆเบฒเบ‡เป€เบ•เบฑเบกเบ—เบตเปˆเบ—เบตเปˆ containers เป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™.

SD_NOTIFY

Systemd เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เป€เบฅเบทเปˆเบญเบ™เบเบฒเบ™เป€เบ›เบตเบ”เบ•เบปเบงเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบŠเปˆเบงเบเบˆเบปเบ™เบเปˆเบงเบฒเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบšเบฑเบ™เบˆเบธเบ—เบตเปˆเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™. Podman เบชเบฒเบกเบฒเบ”เบชเบปเปˆเบ‡เบ•เปเปˆเบŠเบฑเบญเบเป€เบเบฑเบ” SD_NOTIFY เป„เบ›เบซเบฒเบšเปเบฅเบดเบเบฒเบ™เบšเบฑเบ™เบˆเบธเบšเบฑเบ™เบˆเบธเป€เบžเบทเปˆเบญเปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™เปเบˆเป‰เบ‡เป€เบ•เบทเบญเบ™ systemd เบงเปˆเบฒเบกเบฑเบ™เบžเป‰เบญเบกเปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™เปเบฅเป‰เบง. เปเบฅเบฐเบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡, Docker, เป€เบŠเบดเปˆเบ‡เปƒเบŠเป‰เบ•เบปเบงเปเบšเบš client-server, เบšเปเปˆเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เบชเบดเปˆเบ‡เบ™เบตเป‰เป„เบ”เป‰.

เปƒเบ™เปเบœเบ™เบเบฒเบ™

เบžเบงเบเป€เบฎเบปเบฒเบงเบฒเบ‡เปเบœเบ™เบ—เบตเปˆเบˆเบฐเป€เบžเบตเปˆเบกเบ„เปเบฒเบชเบฑเปˆเบ‡ podman เบชเป‰เบฒเบ‡ CONTAINERID เบ—เบตเปˆเบกเบตเบฅเบฐเบšเบปเบš, เป€เบŠเบดเปˆเบ‡เบˆเบฐเบชเป‰เบฒเบ‡เป„เบŸเบฅเปŒเบซเบ™เปˆเบงเบเบ‡เบฒเบ™เบฅเบฐเบšเบปเบšเป€เบžเบทเปˆเบญเบˆเบฑเบ”เบเบฒเบ™เบ–เบฑเบ‡เบชเบฐเป€เบžเบฒเบฐเบ—เบตเปˆเบฅเบฐเบšเบธเป„เบงเป‰. เบญเบฑเบ™เบ™เบตเป‰เบ„เบงเบ™เปƒเบŠเป‰เป„เบ”เป‰เบ—เบฑเบ‡เปƒเบ™เป‚เบซเบกเบ”เบฎเบฒเบ เปเบฅเบฐเบšเปเปˆเบกเบตเบฎเบฒเบเบชเบณเบฅเบฑเบšเบšเบฑเบ™เบˆเบธเบ—เบตเปˆเบšเปเปˆเบกเบตเบชเบดเบ”เบ—เบดเบžเบดเป€เบชเบ”. เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เป€เบซเบฑเบ™เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบชเปเบฒเบฅเบฑเบš runtime systemd-nspawn เบ—เบตเปˆเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰ OCI.

เบชเบฐเบซเบฅเบธเบš

เบเบฒเบ™เปเบฅเปˆเบ™เบฅเบฐเบšเบปเบšเปƒเบ™เบ–เบฑเบ‡เปเบกเปˆเบ™เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ—เบตเปˆเป€เบ‚เบปเป‰เบฒเปƒเบˆเป„เบ”เป‰. เปเบฅเบฐเบ‚เปเบ‚เบญเบšเปƒเบˆเบเบฑเบš Podman, เบชเบธเบ”เบ—เป‰เบฒเบเบžเบงเบเป€เบฎเบปเบฒเบกเบต container runtime เบ—เบตเปˆเบšเปเปˆเบ‚เบฑเบ”เปเบเป‰เบ‡เบเบฑเบš systemd, เปเบ•เปˆเป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เบ‡เปˆเบฒเบเบ•เปเปˆเบเบฒเบ™เปƒเบŠเป‰.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: www.habr.com

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™