Dockerはコンテナに入るためにnsenterツールを使用する

Dockerはコンテナに入るためにnsenterツールを使用する

Dockerコンテナを使用する場合は、nsenterツールを使用する方が便利です。システムにない場合は、自分でインストールする必要があります。

1. まずこのウェブサイトにアクセスして、nsenterツールの最新バージョンを見つけてください。

2. 次に、nsenterツールのソースコードをホストにダウンロードします。

次のコマンドを入力します:

# wget https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v2.32/util-linux-2.32.tar.gz

3. .tar.gzパッケージを解凍する

# tar -xzvf util-linux-2.32.tar.gz

4. util-linux-2.32のディレクトリに入る

# cd util-linux-2.32/

5. ./configure --without-ncursesコマンドを入力します。

6. make nsenterコマンドを入力してnsenterをコンパイルします。

7. nsenterを/usr/local/binパスにコピーする

# cp nsenter /usr/local/bin

8. nsenterの使い方を確認する

# nsenter --help

9. コンテナに接続するには、コンテナの最初のプロセスのPIDを見つける必要があります。これは次のコマンドで取得できます。

形式:

PID=$(docker inspect --format "{{ .State.Pid}}" <コンテナID>)

この PID を取得すると、このコンテナに接続できます。

形式:

nsenter --target $PID --mount --uts --ipc --net --pid

10. コンテナ内の最初のプロセスのPIDを取得する

実行中のコンテナを表示するには、# docker ps コマンドを入力します。

コンテナを表示するにはコマンドを入力してください

c74e0f07a914 のプロセスの PID# docker inspect -f {{.State.Pid}} c74e0f07a914

10. プロセスのPIDを取得し、コンテナに入る

コマンドを入力してください

# nsenter --target 21140 --mount --uts --ipc --net --pid

コンテナに正常に入りました。21140 はコンテナ c74e0f07a914 のプロセス PID です。

nsenter ツールを使用して Docker のコンテナーに入る上記の操作は、エディターが皆さんと共有する内容のすべてです。参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Portainer を使用して Docker のビジュアル インターフェースを構築する方法
  • portainer を使用してリモート docker に接続するチュートリアル
  • Docker で Portainer ビジュアル インターフェースを構築するための詳細な手順
  • Linux での Docker と portainer の設定方法
  • Dockerイメージ解析ツールのダイブ原理解析
  • Dockerで構築されたコンテナにpingツールをインストールする
  • Raspberry Pi 3B+ に 64 ビット Ubuntu システムと Docker ツールをインストールする詳細な手順
  • Docker.v19 で Docker Compose オーケストレーション ツールをインストールして構成する方法
  • Docker 用ビジュアル UI 管理ツール Portainer のインストールと使用方法の分析

<<:  MySQL がタイムスタンプを使用するときにタイムゾーンの問題を無視できるのはなぜですか?

>>:  XHTMLタグは適切に使用する必要があります

推薦する

この記事は、Dockerにおけるcgroupの具体的な使用法を徹底的に理解するのに役立ちます。

目次cgroupとはcgroupの構成cgroupが提供する機能cgroup 内の CPU を制限す...

優れたWebフォームデザイン事例20選

ソフィー・ハルダッククライドキー埠頭 37 東ソープボックス Rxバランス EEハーバー対比 SVN...

Nginx 転送ソケットポート設定の詳細な説明

Nginx によるソケット ポート転送の一般的なシナリオ: オンライン学習アプリケーションでは、通常...

アイデアはDockerプラグインを使用してワンクリックの自動デプロイを実現します

目次環境: 1. Dockerはリモート接続アクセスを可能にするidea dockerプラグインをイ...

CSS による要素の中央揃えの原理の分析

CSS で要素の水平方向と垂直方向の中心を設定することは、非常に一般的な要件です。しかし、理論的には...

表には表示したい境界コードが表示されます

テーブルの共通プロパティ基本的な属性は、width (幅)、height (高さ)、border (...

MySQL データベースのエンコーディングを utf8mb4 に変更する方法

utf8mb4 エンコーディングは utf8 エンコーディングのスーパーセットであり、utf8 と互...

Tomcatの自動シャットダウンに関するバグ修正

序文最近、4 年間実行されている Java EE Web プロジェクトでは、システムが開けないという...

シンプルなドラッグ効果を実現するJavaScript

この記事では、簡単なドラッグ効果を実現するためのJavaScriptの具体的なコードを参考までに紹介...

divとtableの選択と組み合わせ方について簡単に説明します

ページレイアウトは、Web ページを扱い始めた頃からずっと気にかけていたことです。初期のテーブル構造...

MYSQLでリモートアクセス権限を有効にする方法

1. MySQLデータベースにログインするmysql -u ルート -pユーザーテーブルを表示する ...

Linux (Ubuntu) での MySQL 5.6.28 のインストールと設定のチュートリアル

mysql5.6.28のインストールと設定方法1. 基本的なシステム情報を確認し、yumでインストー...

JavaScript の手ぶれ補正とスロットリングの詳細な説明

目次デバウンススロットル要約するデバウンス定義: スクロール イベントなど、短時間に連続してトリガー...

Vueルーティングはページステータスを復元する操作メソッドを返します

ルートパラメータ、ルートナビゲーションガード: ページが戻ったときに検索結果を保持する需要シナリオ:...

シンプルなウェブ計算機を実装するJavaScript

背景私は新しいプロジェクト チームに配属されたので、プロジェクトでは js を使用する必要があります...