コンテナを実行するのにDockerイメージは実際には必要ない

コンテナを実行するのにDockerイメージは実際には必要ない

これは少し見出しっぽいですが、コンテナ イメージは単なる組織の rootfs であるというのは本当です。事前に rootfs を準備しておけば、コンテナ イメージは必要ありません。

[[439964]]

次に、runc を介してコンテナを直接起動する方法を実際のデモンストレーションで説明します。

  1. $ mkdir my_container && cd my_container
  2. $ runc スペック

config.json ファイルは、spec コマンドを通じて生成できます。ファイルの内容はおそらく次のようになります

  1. {
  2. "ociバージョン" : "1.0.1-dev"
  3. "プロセス" : {
  4. "ターミナル" : true
  5. 「ユーザー」 : {
  6. 「ユーザーID」 : 0,
  7. "gid" : 0
  8. },
  9. 「引数」 : [
  10. 「しっ」  
  11. ]、
  12. "cwd" : "/" ,
  13. "env" : [ ... ],
  14. 「機能」 : { ... },
  15. 「rlimits」 : [ ... ]
  16. },
  17. "根" : {
  18. 「パス」 : 「rootfs」
  19. "読み取り専用" : true  
  20. },
  21. 「ホスト名」 : 「runc」
  22. 「マウント」 : [ ... ],
  23. 「Linux」 :{
  24. 「名前空間」 : [
  25. { "タイプ" : "pid" },
  26. { "タイプ" : "ネットワーク" },
  27. { "タイプ" : "ipc" },
  28. { "タイプ" : "uts" },
  29. { "タイプ" : "マウント" }
  30. ]
  31. }
  32. }

これには、主に起動コマンド、env、rootfs、ホスト名、マウント、名前空間などを定義する標準の RUNC 形式が含まれています。

次にrootfsディレクトリを作成します

  1. $ mkdir ルートファイルシステム

次に、ホスト名を出力する Go プログラムを作成し、コンパイルして rootfs にコピーします。

  1. $ cat <<EOF > main.go
  2. パッケージメイン
  3.  
  4. 「fmt」をインポートする 
  5. インポート"os"  
  6.  
  7. 関数main() {
  8. fmt.Println(os.Hostname())
  9. }
  10. 終了
  11.  
  12. $ GOOS=linux GOARCH=amd64 go build -ldflags= "-w -s" -o printme
  13. $ mv printme ルートファイルシステム/

次にコンテナを起動します

  1. $ sudo runc でmycont1を作成します
  2. $ sudo runc スタート mycont1

「runc」を直接出力できます(上記の仕様で定義されているホスト名がruncであるため)。

したがって、対応するコンテナには rootfs のみが必要であり、rootfs がどのように生成されるかは実際には気にする必要はありません。オーバーレイで作られたかどうかについては、判断するのはさらに困難です。

<<:  ヘルスケアにおけるエッジコンピューティングと5Gの役割

>>:  クラウドネイティブのインメモリデータベースであるTairは、ユーザーエクスペリエンスの最適化に役立ちます。

推薦する

自分の人生を大切にし、「匿名」アプリケーションには近づかないでください

最近、「Secret」と呼ばれる匿名アプリケーションが友人の間で非常に人気があります。私がこのアプリ...

アプリケーションの最新化を「より速く、より良く、より安く」実現するというのは誤った提案でしょうか?

この流行は今年特有の「事故」の一つとして考えるべきだろう。その突然の到来は、間違いなく、あらゆる企業...

ウェブマスターとそのウェブサイトに対するチンピラの見解

私は作家です。1日平均2万~3万語をタイプします。内容は多岐にわたり、ダイエットのヒントからゲーム戦...

Qunarが百度知心検索との提携の詳細を公表:19億ドルの収益は前者に属する

Sina Technology News、10月4日正午のニュースによると、Qunarは本日NYSE...

企業で働く SEO 担当者は、どうすれば SEO 目標を合理的に設定できるでしょうか?

SEO を行う人の中には、個人のウェブマスターではなく、企業にサービスを提供するタイプの人もいます。...

Huawei AppGallery PC版が正式にリリースされ、高品質のPCソフトウェアの入手が容易になりました

現在、モバイル インターネットの急速な発展により、人々は徐々に PC から「解放」され、携帯電話は多...

これから高エネルギーが待っています!マルチクラウド戦略では、これらのヒントを参考にしてください

これらの推奨事項に従うことで、ユーザーは組織に真のメリットをもたらすマルチクラウド戦略を開発できます...

Sihua Technology がクラウド時代のストレージをどのように定義しているかをご覧ください (ビデオ インタビュー)

[51CTO.com からのオリジナル記事] ビッグデータ時代の到来により、従来のストレージ アーキ...

銀行機関がクラウド コンピューティングの導入を恐れなくなったのはなぜでしょうか?

セキュリティ上の理由から、銀行機関は従来、業務を運営するために自社のデータセンターに IT 機器を導...

1つの記事で理解する:製品コンセプトとカテゴリーの価値

2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っていますマーケティ...

Weiboマーケティングは、競争の激しいケータリング業界で目立つことを可能にします

ショートビデオ、セルフメディア、インフルエンサーのためのワンストップサービス飲食業界は、あらゆる業界...

大学生が初めて職場に入りSEOに従事する際の評価期間をどうやってうまく通過できるか

著者は、ウェブサイトの最適化を行っている友人の多くが大学を卒業していることに気付きました。彼らが初め...

まずは7月の百度の大きな変化から始めましょう

清明節中の大きな変化を除けば、過去数か月間の百度の変化は穏やかなものと言える。ただ、先週の7月下旬に...