docker 起動後にアクセスできない問題の解決策: 1. 「docker run -itd -p」コマンドを実行します; 2. 「docker ps -a」と入力して「ポート」を表示します; 3. Linux バージョンを確認しますおよび docker version ; 4. 「yum update」コマンドラインを入力してカーネルをアップグレードします; 5. カーネルを再起動します。
このチュートリアルの動作環境: Windows 7 システム、Docker バージョン 20.10.11、Dell G3 コンピューター。
docker を起動した後にアクセスできない場合はどうすればよいですか?
Docker コンテナーは正常に起動されましたが、ブラウザーにアクセスできません (Docker コンテナーの起動後、 docker ps -a を確認すると、ポートが表示されません (ポート列が空です) | linuxカーネル バージョンと Docker バージョンに互換性がありません)
シナリオ: Docker コンテナーは正常に開始されましたが、ブラウザーはそれにアクセスできません
Docker コンテナーの基本操作を学習しています。Tomcat をプルしました。画像を作成し、runcontainerコマンドを入力してコンテナを実行しました 一連の操作は問題ありませんでしたが、ブラウジング時にサーバーがポートにアクセスするとアクセスできません
[root@localhost ~]# docker run -d -p 8081:8080 --name mytomcat b8dfe9ade316
# さまざまなコマンドラインをテストした後、最終的にすべてのコンテナーを表示するコマンドを入力しました。情報を調べたところ、ポートラインが空であることがわかりました。 ! !
[root@localhost ~]# docker ps -a
その後、この状況を説明するキーワードがわからなかったので、古いバージョンの Tomcat をアンインストールして再インストールする、ファイアウォールをオフにする、ファイアウォールを指定された IP を許可または制限します。ポートもファイアウォールも機能しませんでした。指定された列を表示するように出力をフォーマットしましたが、それでもポートが表示されませんでした。紆余曲折を経て、最終的にブロガー Jacen_Chou の方法を見つけて試してみました。 、そしてそれはうまくいきました! ! !ブロガーの Jacen_Chou さん、お世話になりありがとうございます。私の気分は、ブロガーが最後に言ったことと同じです。成功を見たとき、とても興奮して泣きそうになりました。
ブロガーは、次の限り - と言いました。 d 前に追加するだけで、この状況が Docker ポート マッピングが機能しないと呼ばれていることが最終的にわかりました。
[root@localhost ~]# docker run -itd -p 8081:8080 --name mytomcat b8dfe9ade316
次に、 docker ps -a と入力し、最後にポート行の内容を確認します
2. Linux カーネルのバージョンと Docker のバージョンに互換性がありません
問題は解決したと思いましたが、論理的には問題ありませんでした。喜んでブラウザを開きました。しかし、まだ No 5555 だったので、引き続き理由を探し、元のキーワードに戻りました。Docker コンテナーは正常に開始されましたが、アクセスできませんでした。検索したところ、Qingren ブロガーが Linux システムのカーネルが低い可能性があると言っているのを見つけました。 、dockerのバージョンが最新版なので互換性がありません。
Linux バージョンと Docker バージョンをすぐに確認しました。結果は実際に次のようになりました。Docker のバージョンは 20.10.11 ですが、Linux はまだ 3.8 です。それを理解するのに長い時間がかかりました。問題はバージョンの非互換性であることが判明しました。すぐに yum update コマンド ラインを入力してカーネルをアップグレードします。
#查看linux内核版本 [root@localhost ~]# uname -sr #查看docker版本 [root@localhost ~]# docker version #升级linux内核版本,升级所有包同时也升级软件和系统内核 [root@localhost ~]# yum update -y
アップグレードを長時間待った後、Linux のより大きなバージョンをアップグレードする方法を検索することをお勧めします。 yum update は小規模なバージョンのアップグレードにのみ適しており、大きなバージョンをアップグレードするには多くの手順が必要になるため、カーネルのバージョンを確認するのが面倒です。
最後に、アップグレード後に centos とコンテナを再起動することを忘れないでください。
ついに、私のトム猫に会えました~~
#解決策:
Docker ポートのマッピングが成功しているかどうか、Linux カーネルのバージョンと Docker のバージョンに互換性があるかどうかを確認し、互換性がない場合は、Docker のバージョンを下げる 2 つの方法があります。 (上位バージョンをアンインストールして再インストールします) Linux カーネルのバージョンをアップグレードし、アップグレード後にホストを忘れずに再起動してください。
花で終わりました~~~
推奨学習: 「
docker ビデオ チュートリアル以上がdocker を起動した後にアクセスできない場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。