[英]RavenDB installation problems System.Net.Sockets.SocketException (10013)
I am trying to install RavenDB.我正在尝试安装 RavenDB。 O downloades all the installation files from https://ravendb.net/download .
O 从https://ravendb.net/download下载所有安装文件。 The readme file states the following:
自述文件说明如下:
Startup instructions for RavenDB on Windows
Windows上RavenDB的启动说明
RavenDB as a Console Application Open Powershell Type: .\run.ps1
RavenDB 作为控制台应用程序打开 Powershell 类型:.\run.ps1
RavenDB as Service Open Powershell Type: .\setup-as-service.ps1
RavenDB 作为服务打开 Powershell 类型:.\setup-as-service.ps1
The above command is going to install 'RavenDB' service on your machine.
上面的命令将在您的机器上安装“RavenDB”服务。 Note it requires to be run as administrator.
请注意,它需要以管理员身份运行。 It is going to ask whether you'd like to setup secure RavenDB server.
它会询问您是否要设置安全的 RavenDB 服务器。 The server is going to start on port 8080 or 443, if you have chosen to run in secure mode.
如果您选择以安全模式运行,服务器将在端口 8080 或 443 上启动。
You can view its status using the Get-Service Powershell cmdlet:
您可以使用 Get-Service Powershell cmdlet 查看其状态:
Get-Service -Name RavenDB
获取服务名称 RavenDB
Status Name DisplayName ------ ---- ----------- Running RavenDB RavenDB
状态名称 DisplayName ------ ---- ---------- 运行 RavenDB RavenDB
To manage service you can use Stop-Service and Start-Service cmdlets (requires administrator privileges).
要管理服务,您可以使用 Stop-Service 和 Start-Service cmdlet(需要管理员权限)。
Setup Open browser, if not opened automatically, at url printed in "Server available on: " Follow the web setup instructions at: https://ravendb.net/docs/article-page/5.0/csharp/start/installation/setup-wizard
设置 打开浏览器,如果没有自动打开,在 url 中印有“Server available on:” 按照 web 设置说明在: https://ravendb.net/docs/article-page/5.0/csharp/start/installation/setup-巫师
Upgrading to a New Version Follow the upgrade instructions available at: https://ravendb.net/docs/article-page/5.0/csharp/start/installation/upgrading-to-new-version
升级到新版本 请按照以下网址提供的升级说明进行操作: https://ravendb.net/docs/article-page/5.0/csharp/start/installation/upgrading-to-new-version
So I did the first step: I opened the PowerShell as administrator, I navigated to the location of the run file and I executed it.所以我做了第一步:我以管理员身份打开 PowerShell,导航到运行文件的位置并执行它。 What I obtain is the following:
我得到的是以下内容:
_____ _____ ____ | __ \ | __ \| _ \ | |__) |__ ___ _____ _ __ | | | | |_) | | _ // _` \ \ / / _ \ '_ \| | | | _ < | | \ \ (_| |\ V / __/ | | | |__| | |_) | |_| \_\__,_| \_/ \___|_| |_|_____/|____/ Safe by default, optimized for efficiency
Build 52012, Version 5.2, SemVer 5.2.3, Commit 999bd2d PID 12744, 64 bits, 4 Cores, Phys Mem 7.884 GBytes, Arch: X64 Source Code (git repo): https://github.com/ravendb/ravendb Built with love by Hibernating Rhinos and awesome contributors!
构建 52012,版本 5.2,SemVer 5.2.3,提交 999bd2d PID 12744,64 位,4 核,Phys Mem 7.884 GBytes,Arch:X64 源代码(git repo): https://github.com/ravenb/ravendb内置受到 Hibernating Rhinos 和优秀贡献者的喜爱! +---------------------------------------------------------------+
+------------------------------------------------ --------------+
System.Net.Sockets.SocketException (10013): Intento de acceso a un socket no permitido por sus permisos de acceso.
System.Net.Sockets.SocketException (10013):打算访问一个未获得访问权限的套接字。 at System.Net.Sockets.Socket.UpdateStatusAfterSocketErrorAndThrowException(SocketError error, String callerName) at System.Net.Sockets.Socket.DoBind(EndPoint endPointSnapshot, SocketAddress socketAddress) at System.Net.Sockets.Socket.Bind(EndPoint localEP) at Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketConnectionListener.g__BindSocket|13_0(<>c__DisplayClass13_0& ) at Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketConnectionListener.Bind() at Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketTransportFactory.BindAsync(EndPoint endpoint, CancellationToken cancellationToken) at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Infrastructure.TransportManager.BindAsync(EndPoint endPoint, ConnectionDelegate connectionDelegate, EndpointConfig endpointConfig) at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServerImpl.<>c__DisplayClass29_0
1.<<StartAsync>g__OnBind|0>d.MoveNext() --- End of stack trace from previous location --- at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.BindEndpointAsync(ListenOptions endpoint, AddressBindContext context) at Microsoft.AspNetCore.Server.Kestrel.Core.ListenOptions.BindAsync(AddressBindContext context) at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.AddressesStrategy.BindAsync(AddressBindContext context) at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.BindAsync(IEnumerable
在 System.Net.Sockets.Socket.UpdateStatusAfterSocketErrorAndThrowException(SocketError 错误,字符串调用者名称) .AspNetCore.Server.Kestrel.Transport.Sockets.SocketConnectionListener.g__BindSocket|13_0(<>c__DisplayClass13_0& ) 在 Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketConnectionListener.Bind() 在 Microsoft.AspNetCore.Server.Kestrel.Transport。 Sockets.SocketTransportFactory.BindAsync(EndPoint 端点,CancellationToken cancellationToken)在 Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Infrastructure.TransportManager.BindAsync(EndPoint 端点,ConnectionDelegate connectionDelegate,EndpointConfig endpointConfig)在 Microsoft.AspNetCore.Server.Kestrel.Core .KestrelServerImpl.<>c__DisplayClass29_0
1.<<StartAsync>g__OnBind|0>d.MoveNext() --- End of stack trace from previous location --- at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.BindEndpointAsync(ListenOptions endpoint, AddressBindContext context) at Microsoft.AspNetCore.Server.Kestrel.Core.ListenOptions.BindAsync(AddressBindContext context) at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.AddressesStrategy.BindAsync(AddressBindContext context) at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.BindAsync(IEnumerable
1.<<StartAsync>g__OnBind|0>d.MoveNext() --- End of stack trace from previous location --- at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.BindEndpointAsync(ListenOptions endpoint, AddressBindContext context) at Microsoft.AspNetCore.Server.Kestrel.Core.ListenOptions.BindAsync(AddressBindContext context) at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.AddressesStrategy.BindAsync(AddressBindContext context) at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.BindAsync(IEnumerable
1 listenOptions, AddressBindContext context) at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServerImpl.BindAsync(CancellationToken cancellationToken) at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServerImpl.StartAsync[TContext](IHttpApplication`1 application, CancellationToken cancellationToken) at Microsoft.AspNetCore.Hosting.WebHost.StartAsync(CancellationToken cancellationToken) at Microsoft.AspNetCore.Hosting.WebHost.Start() at Raven.Server.RavenServer.Initialize() in C:\Builds\RavenDB-Stable-5.2\52012\src1.<<StartAsync>g__OnBind|0>d.MoveNext() --- End of stack trace from previous location --- at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.BindEndpointAsync(ListenOptions endpoint, AddressBindContext context) at Microsoft.AspNetCore.Server.Kestrel.Core.ListenOptions.BindAsync(AddressBindContext context) at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.AddressesStrategy.BindAsync(AddressBindContext context) at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.BindAsync(IEnumerable
1 listenOptions,AddressBindContext 上下文)在 Microsoft.AspNetCore.Server.Kestrel .Core.KestrelServerImpl.BindAsync(CancellationToken cancellationToken)在 Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServerImpl.StartAsync[TContext](IHttpApplication`1 应用程序,CancellationToken cancellationToken)在 Microsoft.AspNetCore.Hosting.WebHost.StartAsync(CancellationToken cancellationToken)在 Microsoft.AspNetCore.Hosting.WebHost.Start() 在 Raven.Server.RavenServer.Initialize() 在 C:\Builds\RavenDB-Stable-5.2\52012\src \Raven.Server\RavenServer.cs:line 249 at Raven.Server.Program.Main(String[] args) in C:\Builds\RavenDB-Stable-5.2\52012\src\Raven.Server\Program.cs:line 180 Press enter to continue...:\Raven.Server\RavenServer.cs:C 中 Raven.Server.Program.Main(String[] args) 的第 249 行:\Builds\RavenDB-Stable-5.2\52012\src\Raven.Server\Program.cs:line 180 按回车键继续...:
Does anyone have any idea of why is this hapening?有谁知道为什么会这样? I have really spent a lot of time looking for answers on the inte.net like allowing the exe files to go through the Windows firewalls, activating ports manually, etc...and now I jsut don't know what to try.
我真的花了很多时间在 inte.net 上寻找答案,比如允许 exe 文件通过 Windows 防火墙访问 go,手动激活端口等等......现在我不知道该尝试什么。
Thnak you for your answers.谢谢你的答案。
The issue is likely that you have some other service that is also listening on the port that RavenDB is trying to use.问题很可能是您有一些其他服务也在侦听 RavenDB 尝试使用的端口。
You can check what port it is by looking at the settings.json
file, see the value for ServerUrl
and ServerUrl.Tcp
.您可以通过查看
settings.json
文件来检查它是什么端口,查看ServerUrl
和ServerUrl.Tcp
的值。
Usually, RavenDB will try to bind to port 38888
and 8080
.通常,RavenDB 会尝试绑定到端口
38888
和8080
。 If you have something else already listening to those ports, you'll have an error.如果您已经有其他东西在监听这些端口,则会出现错误。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.