目次
はじめに
独立した操作
は、コンテナ上で CheckPoint 操作を実行し、一連のファイルを取得し、それを開始します。他のマシンも。
ホームページ 運用・保守 Docker Docker の runc とは何ですか

Docker の runc とは何ですか

Dec 30, 2021 pm 03:45 PM
docker

Docker では、RunC は、OCI 標準に従ってコンテナを作成および実行する CLI ツールであり、コンテナを実行するための OCI 標準に準拠したコマンド ライン ツールです。 runC は docker の中核部分であり、コンテナの作成、実行、破棄などの操作は最終的に runc を呼び出すことで完了します。

Docker の runc とは何ですか

このチュートリアルの動作環境: linux5.9.8 システム、docker-1.13.1 バージョン、Dell G3 コンピューター。

OCI はコンテナ ランタイム標準を定義し、runC はオープン コンテナ フォーマット標準である Open Container Format (OCF) に従って Docker によって策定された特定の実装です。

このプロジェクトは Docker の libcontainer から移行され、コンテナの起動と停止、リソースの分離などの機能を実装しています。したがって、コンテナはこのツールを通じて直接実行できます。

はじめに

いわゆるコンテナ ランタイム (コンテナ ランタイム) には、コンテナ管理とコンテナ イメージングが含まれます。Open Container Initiative (OCI) は、次のようなコンテナ ランタイムの業界標準です。

A) ランタイム標準 runtime-spec;

B) コンテナ イメージ標準 image-spec

簡単に言えば、コンテナ イメージ標準はコンテナ イメージのパッケージ化形式を定義し、ランタイム標準はコンテナの実行方法を定義します。

RunC は、OCI 標準に従ってコンテナを作成および実行する CLI ツールです。OCI 標準に従ってコンテナを実行するためのコマンドライン ツールです。ランタイム実装でもあります。

Docker

古いバージョンでは docker-runc を呼び出す必要がありますが、最新の CE バージョンでは, runc コマンドに直接変更しました。

Docker の runc とは何ですか

#RunC はコンテナーの最下位の実行環境であり、その上位層は Docker を通じて管理されます。

runC は docker の中核部分であり、コンテナの作成、実行、破棄などの操作は最終的に runc を呼び出すことで完了します。

独立した操作

RunC はコンテナの実行状態であり、イメージ管理は含まれません。直接使用する場合は、最初にイメージを準備する必要があります。ここでは、すでに構築されている BusyBox テンプレート。

OCI バンドル

OCI バンドルとは、OCI 標準を満たす一連のファイルを指します。これらのファイルには、コンテナの実行に必要なすべてのデータが含まれていますこれらは、次の 2 つの項目を含む共通ディレクトリに保存されます:

  • config.json 実行中のコンテナの構成データが含まれます。コンテナのルート ファイルシステム。
  • Docker がホストにインストールされている場合は、
docker export

コマンドを使用して、既存のイメージを OCI バンドル形式にエクスポートできます。

rootfs の生成Docker で BusyBox テンプレートを直接使用します。

----- 下载最新的版本
$ docker pull busybox

----- 创建rootfs
$ mkdir rootfs
$ docker export $(docker create busybox) | tar -C rootfs -xvf -
ログイン後にコピー

設定ファイル

rootfs

ディレクトリには、共通のバイナリ ファイルが含まれています。ルート ディレクトリに加えて、config.json 構成ファイルも必要です。構成テンプレートは、runc spec コマンドを通じて生成できます。 詳細な構成については、https://github.com/opencontainers/runtime-spec/blob/master/spec.md

構成内の

「ターミナル」を変更してください。 file: true

false に変更されます。それ以外の場合は、作成時に cannot assign tty if runc will detach without set console submits が報告されます。 さらに、ターミナルが閉じているため、コマンドは

"args": [ "sleep", "10000" ],

パラメーターに変更されます。

Start

----- 创建容器并查看状态
# runc create mybusybox
# runc list

----- 启动容器,并查看状态
# runc start mybusybox

----- 删除容器
# runc delete mybusybox
ログイン後にコピー

開始後は、
ps aux | grep sleep

を参照してください。特定のコマンド。 一般的なコマンド

----- 查看容器状态
# runc state mybusybox

----- 容器内运行进程
# runc ps mybusybox

----- 在容器中执行命令
# runc exec mybusybox ls

----- 停止容器内的任务
# runc kill mybusybox

----- 暂停容器内的所有进程
# runc pause mybusybox

----- 恢复容器内进程的执行
# runc resume mybusybox

----- 获取容器的资源使用情况
# runc events mybusybox
ログイン後にコピー
ホット マイグレーション

は、コンテナ上で CheckPoint 操作を実行し、一連のファイルを取得し、それを開始します。他のマシンも。

推奨される学習: 「

docker ビデオ チュートリアル

以上がDocker の runc とは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Dockerによってコンテナを出る方法 Dockerによってコンテナを出る方法 Apr 15, 2025 pm 12:15 PM

Dockerコンテナを終了する4つの方法:コンテナ端子でCtrl Dを使用するコンテナターミナルに出口コマンドを入力しますDocker stop< container_name>コマンドを使用するDocker Kill< container_name>ホストターミナルのコマンド(フォース出口)

Dockerのファイルを外部にコピーする方法 Dockerのファイルを外部にコピーする方法 Apr 15, 2025 pm 12:12 PM

Dockerの外部ホストにファイルをコピーする方法:Docker CPコマンドを使用:Docker CP [Options]< Container Path> <ホストパス>。データボリュームの使用:ホストにディレクトリを作成し、-vパラメーターを使用してコンテナを作成するときにディレクトリをコンテナにマウントして、双方向ファイルの同期を実現します。

Dockerコンテナの名前を確認する方法 Dockerコンテナの名前を確認する方法 Apr 15, 2025 pm 12:21 PM

すべてのコンテナ(Docker PS)をリストする手順に従って、Dockerコンテナ名を照会できます。コンテナリストをフィルタリングします(GREPコマンドを使用)。コンテナ名(「名前」列にあります)を取得します。

Dockerを再起動する方法 Dockerを再起動する方法 Apr 15, 2025 pm 12:06 PM

Dockerコンテナを再起動する方法:コンテナID(Docker PS)を取得します。コンテナを停止します(docker stop< container_id>);コンテナを起動します(docker start< container_id>);再起動が成功していることを確認します(Docker PS)。その他の方法:Docker Compose(Docker-Compose Restart)またはDocker API(Dockerドキュメントを参照)。

DockerによるMySQLを開始する方法 DockerによるMySQLを開始する方法 Apr 15, 2025 pm 12:09 PM

DockerでMySQLを起動するプロセスは、次の手順で構成されています。MySQLイメージをプルしてコンテナを作成および起動し、ルートユーザーパスワードを設定し、ポート検証接続をマップしてデータベースを作成し、ユーザーはすべての権限をデータベースに付与します。

Dockerの画像を更新する方法 Dockerの画像を更新する方法 Apr 15, 2025 pm 12:03 PM

Docker画像を更新する手順は次のとおりです。最新の画像タグ新しい画像をプルする新しい画像は、特定のタグのために古い画像を削除します(オプション)コンテナを再起動します(必要に応じて)

Dockerプロセスを表示する方法 Dockerプロセスを表示する方法 Apr 15, 2025 am 11:48 AM

Dockerプロセス表示方法:1。DockerCLIコマンド:Docker PS; 2。SystemDCLIコマンド:SystemCTL Status Docker; 3。CLIコマンドを作成するDocker:Docker-Compose PS。 4。プロセスエクスプローラー(Windows); 5。 /procディレクトリ(Linux)。

中国のDocker画像ソースを変更する方法 中国のDocker画像ソースを変更する方法 Apr 15, 2025 am 11:30 AM

国内のミラーソースに切り替えることができます。手順は次のとおりです。1。構成ファイル/etc/docker/daemon.jsonを編集し、ミラーソースアドレスを追加します。 2。保存して終了した後、Docker Service Sudo SystemCtlを再起動してDockerを再起動して、画像のダウンロード速度と安定性を改善します。

See all articles