コンテナを実行するのに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は、ユーザーエクスペリエンスの最適化に役立ちます。

推薦する

Yalo-2.5 USD / 512M RAM / 100G HDD / 10Tフロー

yalo.io は、2009 年に設立されたと主張しています (実際の状況は確認できません)。Goo...

VMware の 3 つのネットワーク接続の違い

[[217412]] 1. 概要仮想マシンをインストールすると、次の図に示すように、VMnet1 と...

ウェブサイトのページをBaiduに素早くインデックスさせる方法

ブログを構築し始めた頃、「Baidu でウェブサイトを素早くインデックスさせる方法」というタイトルの...

ゲーム業界の幹部がクラウドサービスでゲーマーの関心を維持する方法を共有

Akamai は、ビデオ ゲームの先駆者、革新者、リーダーにリアルタイムのサービスと保護を提供します...

アリババ平頭、RISC-V高効率プロセッサXuantie C908をリリースし、エンドクラウド統合エコシステムを構築

11月3日、2022 Yunqiカンファレンスで、アリババ平頭閣は新しいRISC-V高効率プロセッサ...

オンラインマーケティングの3年間の実践経験を共有: オンラインマーケティングについての簡単な講演

簡単に言えば、インターネット マーケティングとはオンラインで顧客を見つけることです。今日の情報化時代...

A5トピック: 複数のリベートウェブサイトが崩壊し、ねずみ講や詐欺が急増

乱暴な成長による致命的な誘惑、ねずみ講の短期的な利益による詐欺admin5ウェブマスターのウェブサイ...

インフォア:業界を深く掘り下げ、顧客がより早く価値を実現できるよう支援

ERP (Enterprise Resource Planning) は、企業が日常の業務活動を管理...

百度が「熊張浩SEOガイド」をリリースし、検索の新時代を切り開く

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

小紅書のブランドマーケティング推進メカニズムの分析

新しい消費時代において、ブランドがインターネット上のさまざまなマーケティングおよびプロモーション プ...

Baidu BearアカウントによりSecooは中国オリジナルデザインをサポート

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

ペットウェブサイトは、ニッチなプロジェクトで独自の発展の機会をどのように見つけることができるでしょうか?

私はペットのウェブサイトを3年間運営しています。始めた当初は、ペットマーケティングのウェブサイトは常...

新しいサイトの最適化で見落とされがちな 5 つの重要なポイント

多くの新しいサイトがオンラインになるとすぐにさまざまな最適化作業を開始するという状況に遭遇するかもし...

垂直型電子商取引の熱心な顧客が亡くなり、6000万ドルの投資が水の泡に

電子商取引業界の発展は、砂を洗い流す波のようなものです。潮が引くと、誰が裸で泳いでいるかがわかります...