背景:インターフェイスを提供する Flask プロジェクトがあり、これは Docker コンテナを使用して構築および実行されます。MySQL はホスト マシン上で実行されるため、コンテナ内で Flask がホスト マシンの mysql に接続できるようにする必要があります。 ifconfig コマンドを使用すると、docker0 と eth0 があることがわかります。docker コンテナでは、eth0 の IP アドレスとポート番号 (3306) を介してホストの MySQL に接続できます。また、nginx は、docker0 の IP アドレスとコンテナの構築時に指定したポート番号を介してコンテナにアクセスできます。 補足: dockerのmysqlコンテナは正常に動作しますが、ホストマシンはデータベースに接続できません。解決策は次のとおりです。 Dockerはmysqlコンテナを正常に実行しますが、ホストNavicatは接続できません docker で docker ps を実行すると、次のように表示されました。 つまり、mysql は正常ですが、sqlyog と Navicat を使用してデータベースに接続できません。後で問題が見つかりました。mysql コンテナの作成には成功しましたが (docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:5.6.35)、無視したプロンプトがありました。 ここでは、ネットワークが利用できないため、ホストはデータベースに接続できないというメッセージが表示されます。 解決策: 次のコマンド vim /usr/lib/sysctl.d/00-system.conf を入力します (vim が機能しない場合は、vi と入力してください)。 すぐに次のメッセージが表示されます: 最後に次の文を追加します: net.ipv4.ip_forward=1 (追加したコマンドは次のとおりです: 最初に i キーを押してから操作できます)。次に保存して終了します (コマンド net.ipv4.ip_forward=1 を記述した後、esc キーを押し、次に Ctrl+: を押し、最後に wq! と入力して保存して終了します)。次に、ネットワーク サービスを再起動します: systemctl restart network まず、先ほどの mysql コンテナを停止します (docker stop docker)。次に、次のようにコンテナを削除します docker rm mysql: これで、mysql コンテナを再作成して、その効果を確認できます。 ネットワークが利用できないという警告は出ないのでしょうか? sqlyog を使用して接続しましたが、Navicat を使用して接続したときも同じでした。 上記は私の個人的な経験です。参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。間違いや不備な点がありましたら、遠慮なくご指摘ください。 以下もご興味があるかもしれません:
|
一緒に学びましょう1. 伝統的な方法コードをコピーコードは次のとおりです。 <object c...
この記事では、ソーシャル ウェブサイトのホームページを比較分析することで洞察を得て、ソーシャル ウェ...
Alibaba Cloud Server を使用している場合は、セキュリティ グループ設定でポート ...
1. COUNT(*) と COUNT(COL) COUNT(*)は通常、主キーに対してインデックス...
いくつかの理由(好奇心も含む)から、数週間前に Linux デスクトップとして Xfce を使い始め...
ブラウザはTIF形式の画像を表示しますコードをコピーコードは次のとおりです。 <html>...
ガラス窓今日実現するのは雨滴効果です。ただし、雨滴効果を実現する前に、まずは曇りガラス効果を作成しま...
この記事では、参考までにMySQL 5.7.17圧縮版のインストール手順を紹介します。具体的な内容は...
これは、Web ページを Windows のスタート メニューなどのデスクトップ プログラムのように...
初めて MySQL FUNCTION を書いたとき、エラーが何度も発生しました。 Err] 1064...
この記事では、Vueカウンターの簡単な実装コードを例として紹介します。具体的な内容は以下のとおりです...
この記事では、GobangゲームのWebバージョンを実装するためのJavaScriptの具体的なコー...
インターネット経済の継続的な発展に伴い、インターネット上の専門ウェブサイト、公共サービスウェブサイト...
Dockerのインストール カール -fsSL https://get.docker.com -o...
vmware vSphere 6.5 は vSphere ソフトウェアのクラシック バージョンであ...