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タグは適切に使用する必要があります

推薦する

VMware12 に CentOS8 をインストールする方法 (VM 仮想マシンに CentOS8 をインストールするチュートリアル)

数日前に CentOS8 がリリースされました。8 の最初のバージョンですが、今日は VM12 に ...

MySQL <> および <=> 演算子の紹介

<> 演算子機能: 等しくないことを示します。注: 「!=」演算子と同じ機能を持ちますが...

MySQLにおけるACIDトランザクションの実装原理の詳細な説明

導入いつものように、シーンから始めましょう〜インタビュアー:「トランザクションの4つの特性をご存知で...

jQueryはテーブルのシームレスなスクロールを実現します

この記事の例では、テーブルのシームレスなスクロールを実現するためのjQueryの具体的なコードを参考...

VMware Workstation 仮想マシンのインストール操作方法

仮想マシンは非常に便利なテストソフトウェアです。ハードウェアに損傷を与えることなく、さまざまなテスト...

vue-cli4.5.xはプロジェクトを素早く構築します

1. vue-cliをインストールする vue.js で vue.js を実行します。 2. プロジ...

Mac 向け MySQL 5.7.17 のインストールと設定のチュートリアル

1. MySQLをダウンロードする公式サイトのダウンロードページをクリックすると次のページに入ります...

Vueドロップダウンリストの2つの実装方法の比較

Vueドロップダウンリストの2つの実装最初の方法はv-forを使用する <el-select ...

JSON.parse と JSON.stringify の使い方の詳細な説明

目次JSON.パースJSON.parse 構文リバイバーパラメータJSON.parse の機能その他...

Nginxのアクセスボリューム制御の詳細な説明

目的リクエスト アクセス ボリュームを制御するための Nginx ngx_http_limit_co...

HTML でマウスが停止したときに行全体の色 (tr) を変更する方法

純粋な CSS を使用して、マウスが行の上を通過するときに行の背景色を変更し、その行にフォーカスがあ...

MySQL のレイテンシ問題とデータフラッシュ戦略プロセスの分析

目次1. MySQLレプリケーションプロセス2. MySQLの遅延問題の分析3. プロモーション期間...

HTMLファイルで外部CSSファイルを導入する場合のパスの書き方について簡単にまとめます

1. 外部CSSファイルの基本スタイルをインポートする<link> タグを使用して外部ス...

Docker で MySQL サービスをデプロイする方法と、遭遇する落とし穴

最近、ポーターを学んでいます。こんなに強力なものがあったなんて、今まで知らなかった気がします。クラス...