質問 Docker でローカル データベースにアクセスするにはどうすればよいでしょうか? 127.0.0.1 は Docker コンテナ内のコンテナ自体を参照するため、使用は絶対にできません。したがって、他のチャネルを通じて問題を解決する必要があります。 解決 オペレーティングシステムの種類に応じて、次のいずれかの方法を選択できます。 Dockerファイル: /sbin/ip route|awk '/default/ { print $3,"\tdockerhost" }' を実行 >> /etc/hosts ランタイム: (使用しない場合があります) docker run --add-host dockerhost:`/sbin/ip route|awk '/default/ { print $3}'` [私のコンテナ] (便利) docker run --add-host=dockerhost:`docker network inspect --format='{{range .IPAM.Config}}{{.Gateway}}{{end}}' bridge` [画像] Docker for Mac (17.12+): docker.for.mac.ホスト内部 MONGO_SERVER = docker.for.mac.host.internal #docker-compose.yml バージョン: '3' サービス: API: ビルド: ./api ボリューム: - ./api:/usr/src/app:ro ポート: - 「8000」 環境: - モンゴサーバー コマンド: /usr/local/bin/gunicorn -c /usr/src/app/gunicorn_config.py -w 1 -b :8000 wsgi リナックス 解決策1 /sbin/ip route|awk '/default/ { print $3 }' docker run --add-host dockerhost:`/sbin/ip route|awk '/default/ { print $3}'` [私のコンテナ] # 解決策 2 -e "DOCKER_HOST=$(ip -4 addr show docker0 | grep -Po 'inet \K[\d.]+')" 原理 原理を理解するには、コンピュータ ネットワークのモデルと Docker によって実装されるモデルを理解する必要があります。実際、Docker 内には仮想ブリッジ docker0 が実装されています。コンテナ内の外部ホストにアクセスするには、ブリッジ内の外部ホストの仮想アドレス、つまり docker.for.mac.host.internal が必要です。興味があれば、Docker のネットワーク原則、コンピュータ ネットワーク原則、および docker compose について学習できます。 参照 [1].(stackoverflow)dockerの親ホストのIPをコンテナのホストファイルに挿入する [2].(stackoverflow)dockerコンテナ内からdockerホストのIPアドレスを取得する方法 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
目次MYSQL メタデータ ロック (MDL ロック) 学習理論とロック タイプ テスト1. 予備的...
目次1. リテラル値でオブジェクトを作成する2. 新しいキャラクターを使ってオブジェクトを作成する3...
プレビュー: コード:ページセクション: <テンプレート> <div class=...
まずMySQLにログインする シェル> mysql --user=root mysqlパスワー...
目次1. プロジェクトフォルダ構造1. アセットフォルダ2. 図書館3. ローカル設定(ローカル) ...
目次1. イベントとは何ですか? 2. イベントの使い方3. バインドタップとキャッチタップの違い4...
目次1. 文脈1. 使用シナリオ2. 使用手順3. 結論2. 小道具の詳細1. 子供の財産2. 小道...
1. 何ですかCSS アニメーションは、CSS を使用して拡張マークアップ言語 (XML) 要素をア...
序文古いプロジェクトを引き継ぐ苦労 - MongoDB クラスターの学習と構築に関する前回の記事を読...
border-radius: CSS3 丸い角構文: border-radius: 25px;楕円...
以前のブログのログインページを作成していたときに、この問題に遭遇しました。突然、透明な背景画像と不透...
** CentOS7 で yum ソースをインストールし、rz および sz コマンドをアップロー...
1) jdkファイルが保存されているフォルダパスを入力します私はここにいますusr/local/jd...
画像の周囲にテキストを折り返すとは何ですか?これは次の図の効果です。 エフェクトのCSSコードはここ...
mysql5.6.28のインストールと設定方法1. 基本的なシステム情報を確認し、yumでインストー...