2

私はWindows上でbashの簡単なWebサイト(Windows Anniversary update bash)を実行しようとしていますが、これまでに失敗しました。 Windows上でbash上でKestrelを実行する

は、私が作成し、コンソールアプリケーションを実行することができるよ、私はWebプロジェクトに

dotnet run 

を入力するたびに、私は得る:

Unhandled Exception: System.AggregateException: One or more errors occurred. (Error -98 EADDRINUSE address already in use) ---> Microsoft.AspNetCore.Server.Kestrel.Internal.Networking.UvException: Error -98 EADDRINUSE address already in use 
    at Microsoft.AspNetCore.Server.Kestrel.Internal.Networking.Libuv.Check(Int32 statusCode) 
    at Microsoft.AspNetCore.Server.Kestrel.Internal.Networking.UvTcpHandle.GetSockIPEndPoint() 
    at Microsoft.AspNetCore.Server.Kestrel.Internal.Http.TcpListenerPrimary.CreateListenSocket() 
    at Microsoft.AspNetCore.Server.Kestrel.Internal.Http.Listener.<>c.<StartAsync>b__6_0(Object state) 
--- End of stack trace from previous location where exception was thrown --- 
    at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 
    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 
    at Microsoft.AspNetCore.Server.Kestrel.Internal.Http.ListenerPrimary.<StartAsync>d__11.MoveNext() 
    --- End of inner exception stack trace --- 
    at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions) 
    at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken) 
    at Microsoft.AspNetCore.Server.Kestrel.Internal.KestrelEngine.CreateServer(ServerAddress address) 
    at Microsoft.AspNetCore.Server.Kestrel.KestrelServer.Start[TContext](IHttpApplication`1 application) 
    at Microsoft.AspNetCore.Hosting.Internal.WebHost.Start() 
    at Microsoft.AspNetCore.Hosting.WebHostExtensions.Run(IWebHost host, CancellationToken token, String shutdownMessage) 
    at Microsoft.AspNetCore.Hosting.WebHostExtensions.Run(IWebHost host) 
    at WebApplication.Program.Main(String[] args) 

は、誰もがこのことに成功していますか?私はあまりにも多くの "剥奪されたベータ版のLinuxのバージョン"を求めていますか?

EDIT:

mkdir mytestwebsite 
cd mytestwebsite 
dotnet new -t web 
dotnet restore 
dotnet run 

し、問題が表示されます。

I型プロンプトのウィンドウ上のbash上で、動作を再現します。

+0

多分、あなたは専門家の読者にいくつかのコードを渡すことができます。つまり、その「働かない」IMHOです。 http://stackoverflow.com/help/mcveを読んだことがありますか?がんばろう。 – shellter

+0

ありがとう@shellter、編集済み – mCasamento

+0

そのポートはすでに使用されているようです。 – ManoDestra

答えて

2

そのエラー・メッセージの重要な部分はこれです:これは何かがすでにあなたが聞きしようとしているポートにバインドされていることを言っている、すでに使用中の

エラー-98 EADDRINUSEアドレス

に。たとえば、Kestrelを実行してポート80(デフォルトのHTTPポート)でリスンする場合、Apacheもすでにアタッチされている可能性があります。既にそのポートでリッスンしているものをシャットダウンするか、新しいポートを選択するようにアプリケーションを変更する必要があります。

+0

私はポート5000(デフォルトのkestrelポートを使用していた人は無料です)を説明することはできませんが、5001と5050のランダムな試行のあと、ランダムな "5123"が働きました。 あなたは正しいと思います。 – mCasamento

+0

'netstat'を実行すると、すべてのポートを一覧表示するようにしてください。 Windows上でBashに付属しているかどうかは分かりません... – DavidG

+0

は既に試していますが、何も表示されません。彼らは同じアドレスを共有して以来、同じことをWindowsホストでも試しましたが、再び運がありません。 私はまだミステリーですが、少なくとも私はkestrelを仮想マシンなしで実行し、同じファイルシステムを共有することができて満足しています。 – mCasamento

関連する問題