2016-09-05 9 views
0

Dockerコンテナ内で.netコアベースのアプリケーションを実行することに関連する簡単なシナリオを実行しようとしています。私はWindows 10で動作しており、VS 2015を使用しています。ドッカーをローカルで使用できるように、ドッカーVSツールとDocker-Machineをインストールしました。オンラインさまざまなチュートリアルを使用してDockerでホストされているCoreClr Web APIへのアクセス

iができました:VSからローカル

  • 実行ウェブAPIプロジェクトに成功
  • はのIPを持っている私の「デフォルト」ドッカマシン(上の.NETコアをインストールします。私は
  • がドッキングウィンドウの画像
上のポート5123を公開VS
  • を使用して、私の単純なWeb APIを含むドッキングウィンドウのイメージをビルドし)「ドッキングウィンドウマシンは、デフォルトを検査」を実行することにより得られる192.168.99.

    私の問題は、ブラウザにhttp://192.168.99.100:5123/api/valuesと入力すると、まだWeb APIへの呼び出しを開始できないという最終ステップ(複数のオンラインチュートリアルでは異なる方法でも)エラー)。

    私のイメージ上の設定では、ポートの露出が働いていたことを示している(私は、NULL値を持っていたいくつかのフィールド削除):これは私がオンラインで行ってきましたチュートリアル/サンプル限りです

    { 
         "Id": "675c3aa63600ae3db7fce0353f5e3e42a10a31d436c48b1d7f3b0aff0887f45c", 
         "Created": "2016-09-05T16:55:04.917207712Z", 
         "Path": "/bin/sh", 
         "Args": [ 
          "-c", 
          "dotnet CoreClr.Web.dll" 
         ], 
         "State": { 
          "Status": "running", 
          "Running": true, 
          "Paused": false, 
          "Restarting": false, 
          "OOMKilled": false, 
          "Dead": false, 
          "Pid": 10465, 
          "ExitCode": 0, 
          "Error": "", 
          "StartedAt": "2016-09-05T16:55:05.052990865Z", 
          "FinishedAt": "0001-01-01T00:00:00Z" 
         }, 
    
         "HostConfig": { 
          "Binds": null, 
          "ContainerIDFile": "", 
          "LogConfig": { 
           "Type": "json-file", 
           "Config": {} 
          }, 
          "NetworkMode": "default", 
          "PortBindings": {}, 
          "RestartPolicy": { 
           "Name": "no", 
           "MaximumRetryCount": 0 
          }, 
          "AutoRemove": false,    
          "Privileged": false, 
          "PublishAllPorts": false, 
          "ReadonlyRootfs": false, 
          "SecurityOpt": null, 
          "UTSMode": "", 
          "UsernsMode": "", 
          "ShmSize": 67108864, 
          "Runtime": "runc", 
          "ConsoleSize": [ 
           69, 
           287 
          ], 
         }, 
         "GraphDriver": { 
          "Name": "aufs", 
          "Data": null 
         }, 
         "Mounts": [], 
         "Config": { 
          "Hostname": "675c3aa63600", 
          "Domainname": "", 
          "User": "", 
          "AttachStdin": false, 
          "AttachStdout": true, 
          "AttachStderr": true, 
          "ExposedPorts": { 
           "5123/tcp": {} 
          }, 
          "Tty": false, 
          "OpenStdin": false, 
          "StdinOnce": false, 
          "Env": [ 
           "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", 
           "DOTNET_VERSION=1.0.0", 
           "DOTNET_DOWNLOAD_URL=https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/1.0.0/dotnet-debian-x64.1.0.0.tar.gz", 
           "ASPNETCORE_URLS=http://*:5123" 
          ], 
          "Cmd": null, 
          "Image": "username/coreclr.web", 
          "Volumes": null, 
          "WorkingDir": "/app", 
          "Entrypoint": [ 
           "/bin/sh", 
           "-c", 
           "dotnet CoreClr.Web.dll" 
          ], 
          "OnBuild": null, 
          "Labels": {} 
         }, 
         "NetworkSettings": { 
          "Bridge": "", 
          "SandboxID": "509cbf68bb9d642a71ca26380541ceee1c1b86ed886515b52a62e21aecb5ca94", 
          "HairpinMode": false, 
          "LinkLocalIPv6Address": "", 
          "LinkLocalIPv6PrefixLen": 0, 
          "Ports": { 
           "5123/tcp": null 
          }, 
          "SandboxKey": "/var/run/docker/netns/509cbf68bb9d", 
          "SecondaryIPAddresses": null, 
          "SecondaryIPv6Addresses": null, 
          "EndpointID": "16e381f947d84f37040a71e81a213e31014ef8327176a2e18fab12da2c429b5c", 
          "Gateway": "172.17.0.1", 
          "GlobalIPv6Address": "", 
          "GlobalIPv6PrefixLen": 0, 
          "IPAddress": "172.17.0.11", 
          "IPPrefixLen": 16, 
          "IPv6Gateway": "", 
          "MacAddress": "02:42:ac:11:00:0b", 
          "Networks": { 
           "bridge": { 
            "IPAMConfig": null, 
            "Links": null, 
            "Aliases": null, 
            "NetworkID": "1eb481804e0a0f02ddaeca8e0868225b4d76795066fd0aedf950c83f8ee377fd", 
            "EndpointID": "16e381f947d84f37040a71e81a213e31014ef8327176a2e18fab12da2c429b5c", 
            "Gateway": "172.17.0.1", 
            "IPAddress": "172.17.0.11", 
            "IPPrefixLen": 16, 
            "IPv6Gateway": "", 
            "GlobalIPv6Address": "", 
            "GlobalIPv6PrefixLen": 0, 
            "MacAddress": "02:42:ac:11:00:0b" 
           } 
          } 
         } 
        } 
    

    を、そして彼らこの問題はありませんでした。

    ありがとうございました。

    おかげ

    編集:追加web.configファイル

    ?xml version="1.0" encoding="utf-8"?> 
    <configuration> 
    
        <!-- 
        Configure your application settings in appsettings.json. Learn more at http://go.microsoft.com/fwlink/?LinkId=786380 
        --> 
    
        <system.webServer> 
        <handlers> 
         <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified"/> 
        </handlers> 
        <aspNetCore processPath="%LAUNCHER_PATH%" arguments="%LAUNCHER_ARGS%" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" forwardWindowsAuthToken="false"/> 
        </system.webServer> 
    </configuration> 
    

    アプリケーションの設定された状態で:これは動作しますが、「DPを持つコンテナを開始する理由

    { 
        "Logging": { 
        "IncludeScopes": false, 
        "LogLevel": { 
         "Default": "Debug", 
         "System": "Information", 
         "Microsoft": "Information" 
        } 
        } 
    } 
    
  • +0

    アプリの設定はどのようになっていますか? – DavidG

    +0

    メインの質問に設定内容を追加しました - これは生成されたデフォルト値です –

    +0

    私はDockerのエキスパートではありませんが、IPアドレスが '172.17.0.11'と設定されていませんか?それで 'http://172.17.0.11 :: 5123/api/values'は機能しますか? – DavidG

    答えて

    0

    全くわかりません引数セットは:

    $は5123 -dp実行ドッカー:5123/tcpの--name = DEV-APIユーザ名/ coreclr.web

    コンテナの設定の差は 'hostconfigに' ノードの下にportbindingsが設定されているということです

    "HostConfig": { 
          "Binds": null, 
          "ContainerIDFile": "", 
          "LogConfig": { 
           "Type": "json-file", 
           "Config": {} 
          }, 
          "NetworkMode": "default", 
          "PortBindings": { 
           "5123/tcp": [ 
            { 
             "HostIp": "", 
             "HostPort": "5123" 
            } 
           ] 
          }, 
    
    関連する問題