ホームページ  >  記事  >  運用・保守  >  Dockerデーモンの起動方法

Dockerデーモンの起動方法

PHPz
PHPzオリジナル
2023-04-19 14:11:545241ブラウズ

Docker は、開発者がアプリケーションを迅速に構築、デプロイ、実行できるようにする一般的なコンテナ化テクノロジです。 Docker は Linux オペレーティング システム上で実行されるため、Docker デーモンの起動方法を知ることが非常に重要です。

Docker デーモンは、Docker イメージ、コンテナー、ネットワーク、データ ボリュームなどのリソースの管理を担当します。 Docker をインストールすると、Docker デーモンが自動的に起動しますが、起動に失敗する場合があります。今回はDockerデーモンの起動方法を紹介します。

ステップ 1: Docker デーモンのステータスを確認する

Docker デーモンを開始する前に、そのステータスを確認する必要があります。 Linux コマンド ラインから、次のコマンドを入力して Docker デーモンのステータスを確認できます。

sudo systemctl status docker

Docker デーモンが実行中の場合は、次のような出力が表示されます。

● docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2021-02-19 07:54:53 UTC; 8min ago
       Docs: https://docs.docker.com
   Main PID: 954 (dockerd)
      Tasks: 16
     Memory: 156.4M
     CGroup: /system.slice/docker.service
             ├─ 954 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
             ├─1051 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 2375 -container-ip 172.17.0.2 -container-port 2375
             ├─1058 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 2376 -container-ip 172.17.0.2 -container-port 2376

If Docker デーモンが実行されていない場合は、次のコマンドを入力して起動できます:

sudo systemctl start docker

ステップ 2: Docker デーモンのログを確認します

Docker デーモンが起動に失敗した場合は、次のコマンドを実行する必要があります。 Docker デーモンのログを確認して、問題の場所を見つけます。 Linux コマンド ラインで、次のコマンドを入力すると、Docker デーモンのログを表示できます。

sudo journalctl -u docker

このコマンドは、Docker デーモンの最近のログ レコードを表示します。 Docker デーモンの起動に関連するエラー メッセージを探す必要があります。たとえば、次のようなエラー メッセージが表示された場合:

level=error msg="Failed to start daemon: Error initializing network controller: list bridge addresses failed: PredefinedLocalScopeDefaultNetworks ListLocal Error exec: \"ip\": executable file not found in $PATH"

このエラー メッセージは、ip コマンドが欠落しているため、それをインストールする必要があることを示しています。

ステップ 3: ポートの競合を解決する

Docker デーモンが起動に失敗し、ログにエラー メッセージが表示されない場合は、ポートの競合が発生している可能性があります。 Docker デーモンは、デフォルトで TCP ポート 2375 および 2376 をリッスンします。これらのポートが他のアプリケーションによって占有されている場合、Docker デーモンは起動しません。

Linux コマンド ラインでは、次のコマンドを使用して、ポートを占有しているアプリケーションを検索できます。

sudo netstat -tlnp | grep ':2375\|:2376'

このコマンドは、ポート 2375 を占有しているアプリケーションの PID (プロセス ID) を表示します。 2376。これらのプロセスを強制終了してポートを解放することも、Docker デーモン構成ファイルで別のポートを指定することもできます。

ステップ 4: Docker デーモン構成を確認する

上記のどの手順でも Docker デーモンの起動の問題を解決できない場合は、Docker デーモン構成ファイルを確認する必要がある可能性があります。 Docker デーモンの構成ファイルは /etc/docker/ ディレクトリにあり、daemon.json という名前が付けられます。

次のコマンドを使用して、Docker デーモンの構成を表示できます:

sudo cat /etc/docker/daemon.json

構成ファイルの内容が空の場合は、新しい構成ファイルを作成する必要がある場合があります。以下に例を示します:

{
   "storage-driver": "overlay2",
   "dns": ["8.8.8.8", "8.8.4.4"]
     "graph": "/mnt/docker-data"
}

この例では、ストレージ ドライバーを overlay2、DNS サーバーを 8.8.8.8 および 8.8.4.4、グラフ ストレージの場所を /mnt/docker-data として指定しました。 。

ステップ 5: Docker デーモンを再起動する

Docker デーモンの起動問題を解決した場合は、Docker デーモンを再起動して新しい構成を適用する必要があります。 Linux コマンド ラインでは、次のコマンドを使用して Docker デーモンを再起動できます。

sudo systemctl restart docker

結論

この記事では、Docker デーモンの起動方法と問題の解決方法を紹介しました。起動失敗のこと。起動時に問題が発生した場合は、上記の手順に従って問題を 1 つずつトラブルシューティングし、Docker イメージとコンテナーを実行してコンテナー化テクノロジの利便性を享受してください。

以上がDockerデーモンの起動方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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