最近 Docker を使用しているときに、多くの人が問題に遭遇しました。Docker コマンドがコンテナー内に見つからないという問題です。この質問は混乱を招く可能性があるため、今日はこの問題の原因と解決策を詳しく見ていきます。
Docker は、アプリケーションを、あらゆるシステム上で実行できる完全なポータブル コンテナーにパッケージ化できる、非常に強力なコンテナー化テクノロジです。 Docker は通常、Docker コンテナーとイメージを管理する Docker デーモンを実行することによって使用されます。 Docker のコンテキストでは、Docker コマンドを使用するには 2 つの方法があります。ホスト マシン上で Docker コマンドを使用する方法と、コンテナー内で Docker コマンドを使用する方法です。
一般に、ホスト マシンで Docker コマンドを使用する場合、コンテナでも同じコマンドを使用できます。これは、コンテナー内で Docker デーモンがすでに実行されており、コンテナー内のコマンドが Docker デーモンと通信できるようにするいくつかの API を公開しているためです。したがって、コンテナー内で Docker コマンドを使用してコンテナーを管理できます。たとえば、Docker コマンドを使用して、新しいコンテナーの実行、コンテナーのステータスの確認、コンテナーの一時停止などを行うことができます。
ただし、場合によっては、コンテナー内で Docker コマンドが見つからない状況が発生することがあります。これは通常、次のいずれかの理由によって発生します。
#これが最も一般的な理由です。コンテナ内で実行すると、通常、Docker コマンドはインストールされません。 Docker はコンテナ内のプロセスではなく、ホスト上で実行されるプロセスであるためです。したがって、コンテナー内で Docker コマンドを使用する場合は、最初にコンテナー内に Docker コマンドをインストールする必要があります。通常、ホスト上と同じ Docker インストール コマンドをコンテナ内で実行することによって Docker をインストールします。例:
apt-get install docker
docker run -v /var/run/docker.sock:/var/run/docker.sock my_container
sudo docker ps概要: コンテナ内で Docker コマンドを使用する必要がある場合は、上記の 3 つの要素に注意する必要があります。コンテナに Docker コマンドをインストールする、コンテナをマウントするコンテナ内およびコンテナ内で Docker コマンドを使用するには、Docker ソケットから Root 権限が必要です。これらを理解していれば、コンテナ内で Docker コマンドが見つからないという問題は解決できます。
以上がdocker コマンドがコンテナ内で見つからない場合の対処方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。