Upgrade to Pro — share decks privately, control downloads, hide ads and more …

コンテナ完全に理解した

bmf_san
January 16, 2019

 コンテナ完全に理解した

bmf_san

January 16, 2019
Tweet

More Decks by bmf_san

Other Decks in Programming

Transcript

  1. 【図解】コンテナと仮想化の違い ϋʔυ΢ΣΞ ϋʔυ΢ΣΞ ϗετ04 Ծ૝Խιϑτ΢ΣΞ ήετ04 ήετ04 ϗετ04 ίϯςφ؅ཧιϑτ΢ΣΞ ήετ04

    ϥΠϒϥϦ ήετ04 ϥΠϒϥϦ ϛυϧ΢ΣΞ ϛυϧ΢ΣΞ ΞϓϦέʔγϣϯ ϛυϧ΢ΣΞ ϛυϧ΢ΣΞ ΞϓϦέʔγϣϯ ΞϓϦέʔγϣϯ ΞϓϦέʔγϣϯ ίϯςφ Ծ૝Խʢϗετܕʣ ίϯςφ
  2. Kernel namespaces ・プロセスを6種類のシステムリソースに分割する機 能  ・ipc, uts, mount, pid, network, user

    ・分離されたリソース同⼠は互いに⼲渉できない ・ユーザーがユーザー専⽤の分離されたリソースを 持っているように⾒える仕組みを実現
  3. Appramor and SELinux profiles ・アプリケーションとかファイルとかカーネルとかのアクセス制 御機能 ・Apparmor  ・Linux Security Modulesの1種

     ・アプリケーションのアクセス権限をセキュアに管理 ・SELinux  ・Linuxカーネルに強制アクセス制御機能を加えるモジュール
  4. Libcontainer is 何 ・コンテナ利⽤のためのGoで実装されたランタイム ・元はdockerのリポジトリにあった(cf. https://github.com/docker/libcontainer) ・runC (cf. https://github.com/opencontainers/runc)  ・コンテナランタイムのリファレンス実装プロジェクト

     ・OCI(Open Container Initiative)が管理   ・Docker社が⽴ち上げたコンテナ標準仕様を策定する団体 ・gVisorもコンテナランタイム ・コンテナランタイムをもっと知る  ・cf. https://www.ianlewis.org/en/container-runtimes-part-1-introduction-container-r