問題タブ [windows-container]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
docker - Windows コンテナーが原因で Azure SQL 接続が失敗する
.NET プログラム用の Dockerfile を作成しました。このプログラムは、私のデスクトップと、Docker を使用しない Windows Server 2016 (Azure VM) で正常に動作します。内部でコンテナーとして実行しようとすると ( microsoft/windowsservercoreに基づく)、Azure SQL インスタンスに接続するときにデータベース エラーが発生することがよくあります。
2 つの Azure SQL インスタンスが実行されています (P1 と負荷なし)。接続を確立できる場合はかなり高速ですが、問題は接続を確立できないことが多いことです。ネットワークが非常に不安定なようです。これらは私に投げられる典型的なエラーです:
System.Data.SqlClient.SqlException: SQL Server への接続を確立中に、ネットワーク関連またはインスタンス固有のエラーが発生しました。サーバーが見つからないか、アクセスできませんでした。インスタンス名が正しいこと、および SQL Server がリモート接続を許可するように構成されていることを確認してください。(プロバイダー: 名前付きパイプ プロバイダー、エラー: 40 - SQL Server への接続を開けませんでした)
内部例外は、 The network path was not found を報告します。最初は自分のローカル マシンかもしれないと思っていましたが、Azure の Windows Server 2016 (コンテナーを使用) VM インスタンスにも問題があります。
問題を特定するために、5 秒ごとにデータベースに接続する (そして を実行するSELECT COUNT(*) from sysobjects
) テスト プログラムを作成しました。このプログラムは常にデータベースの検索に成功します。
私の他のプログラムは起動時に失敗することが多いようですが、初期化中にデータベース呼び出しがたくさんあります。スレッド化、接続プーリングなどで何かが違うのではないかと思います...
手がかりはありますか?
iis - 外部ネットワークへの Docker IIS ネットワーク接続
ここでは、Dockers にとってまったく新しいものです。
ServiceStack フレームワーク上に構築された非常に単純な .NET 45 アプリケーションがあります。それらは主に API Web サービスです。
Docker イメージは適切に構築されており、コンテナーは適切にデプロイされて実行されており、問題はありません。Windows コンテナーを使用しています (Windows 用の Docker ではありません)。ただし、サード パーティの API (レガシー) を呼び出している特定の Web サービスが 1 つあり、そのために SOAP クライアントを使用しています。EndpointNotFound
ただし、この Web サービスは常に例外をスローします。
「メッセージを受け入れることができるhttps://externalapi.asmxでリッスンしているエンドポイントがありませんでした。これは多くの場合、アドレスまたは SOAP アクションが正しくないことが原因です。詳細については、InnerException が存在する場合は参照してください。」
Windows NATの問題の問題を読みました。私の直感では、自己完結型のコンテナは隔離されているため、外の世界への外部インターネット接続はありません。microsoft/iis イメージで構成する必要があるものはありますか?
私のDockerファイル:
docker - Windows Docker コンテナーの PATH への追加
Windows Docker コンテナー内の PATH に追加する必要があり、多くの順列を試しました。
これらはどれも機能しません: 既存の PATH 変数を評価しません。
PATH に追加する正しい構文は何ですか? Docker 内の PATH に追加することはできますか? (同様の Linux コンテナーで実行できます)
linux - Windows コンテナーを Linux でホストできますか?
Linux で Windows コンテナーを実行することはできますか? このシナリオは、.NET (旧ネット) で記述されたアプリケーションと、これを Docker で実行して .NET で記述された APIを提供したいLinux ユーザーに基づいています。net462
localhost
Docker Desktop for Windows のベータ版を使用しています。
いいえの場合、なぜ Windows は Linux コンテナーを実行でき、その逆はできないのでしょうか?
しばらく経ちましたが、この質問は人気のある質問です。ここで、回避策は新しいネット標準を使用することであることに注意してください。4.6.2
フレームワークを新しいライブラリにパックすることができました。