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 サイトの他の関連記事を参照してください。