Sab39 8 Posted September 22, 2020 Posted September 22, 2020 Getting a few errors pasting the log below and attaching (the port :80 is for a reverse proxy, the subdomain points to the correct port 8096) Info App: Loading Emby.Server.Sync, Version=4.5.0.50, Culture=neutral, PublicKeyToken=null Info App: Loading EmbyServer, Version=4.5.0.50, Culture=neutral, PublicKeyToken=null Info SqliteUserRepository: Sqlite version: 3.32.3 Info SqliteUserRepository: Sqlite compiler options: COMPILER=gcc-8.3.0,ENABLE_COLUMN_METADATA,ENABLE_DBSTAT_VTAB,ENABLE_FTS3_PARENTHESIS,ENABLE_FTS3_TOKENIZER,ENABLE_FTS4,ENABLE_FTS5,ENABLE_GEOPOLY,ENABLE_JSON1,ENABLE_PREUPDATE_HOOK,ENABLE_RTREE,ENABLE_SESSION,ENABLE_UNLOCK_NOTIFY,ENABLE_UPDATE_DELETE_LIMIT,LIKE_DOESNT_MATCH_BLOBS,MAX_SCHEMA_RETRY=25,MAX_VARIABLE_NUMBER=250000,OMIT_LOOKASIDE,SECURE_DELETE,THREADSAFE=1 Info SqliteUserRepository: Default journal_mode for /config/data/users.db is wal Info AuthenticationRepository: Default journal_mode for /config/data/authentication.db is wal Info ActivityRepository: Default journal_mode for /config/data/activitylog.db is wal Info SqliteDisplayPreferencesRepository: Default journal_mode for /config/data/displaypreferences.db is wal Info App: Adding HttpListener prefix http://+:80/ Error HttpServer: Unable to start Kestrel. *** Error Report *** Version: 4.5.0.50 Command line: /system/EmbyServer.dll -programdata /config -ffdetect /bin/ffdetect -ffmpeg /bin/ffmpeg -ffprobe /bin/ffprobe -restartexitcode 3 Operating system: Linux version 4.19.107-Unraid (root@38721b48cdfb) (gcc version 9.2.0 (GCC)) #1 SMP Sun Mar 8 14:34:03 CDT 2020 Framework: .NET Core 3.1.7 OS/Process: x64/x64 Runtime: system/System.Private.CoreLib.dll Processor count: 12 Data path: /config Application path: /system System.Net.Sockets.SocketException: System.Net.Sockets.SocketException (13): Permission denied 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.Bind() at Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketTransportFactory.BindAsync(EndPoint endpoint, CancellationToken cancellationToken) at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServer.<>c__DisplayClass21_0`1.<<StartAsync>g__OnBind|0>d.MoveNext() --- End of stack trace from previous location where exception was thrown --- 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.AnyIPListenOptions.BindAsync(AddressBindContext context) at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.EndpointsStrategy.BindAsync(AddressBindContext context) at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.BindAsync(IServerAddressesFeature addresses, KestrelServerOptions serverOptions, ILogger logger, Func`2 createBinding) at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServer.StartAsync[TContext](IHttpApplication`1 application, CancellationToken cancellationToken) Source: System.Net.Sockets TargetSite: Void UpdateStatusAfterSocketErrorAndThrowException(System.Net.Sockets.SocketError, System.String) Error Main: Error in appHost.Init *** Error Report *** Version: 4.5.0.50 Command line: /system/EmbyServer.dll -programdata /config -ffdetect /bin/ffdetect -ffmpeg /bin/ffmpeg -ffprobe /bin/ffprobe -restartexitcode 3 Operating system: Linux version 4.19.107-Unraid (root@38721b48cdfb) (gcc version 9.2.0 (GCC)) #1 SMP Sun Mar 8 14:34:03 CDT 2020 Framework: .NET Core 3.1.7 OS/Process: x64/x64 Runtime: system/System.Private.CoreLib.dll Processor count: 12 Data path: /config Application path: /system System.Net.Sockets.SocketException: System.Net.Sockets.SocketException (13): Permission denied 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.Bind() at Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketTransportFactory.BindAsync(EndPoint endpoint, CancellationToken cancellationToken) at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServer.<>c__DisplayClass21_0`1.<<StartAsync>g__OnBind|0>d.MoveNext() --- End of stack trace from previous location where exception was thrown --- 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.AnyIPListenOptions.BindAsync(AddressBindContext context) at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.EndpointsStrategy.BindAsync(AddressBindContext context) at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.BindAsync(IServerAddressesFeature addresses, KestrelServerOptions serverOptions, ILogger logger, Func`2 createBinding) at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServer.StartAsync[TContext](IHttpApplication`1 application, CancellationToken cancellationToken) at Microsoft.AspNetCore.Hosting.WebHost.StartAsync(CancellationToken cancellationToken) at Microsoft.AspNetCore.Hosting.WebHost.Start() at Emby.Server.Implementations.HttpServer.KestrelHost.KestrelListener.OnAddPrefixesComplete() at Emby.Server.Implementations.ApplicationHost.Init() at EmbyServer.HostedService.StartAsync(CancellationToken cancellationToken) Source: System.Net.Sockets TargetSite: Void UpdateStatusAfterSocketErrorAndThrowException(System.Net.Sockets.SocketError, System.String) Info Main: Shutdown complete [cont-finish.d] executing container finish scripts... [cont-finish.d] done. [s6-finish] waiting for services. [s6-finish] sending all processes the TERM signal. [s6-finish] sending all processes the KILL signal and exiting. embyerrorlog.txt
Sab39 8 Posted September 22, 2020 Author Posted September 22, 2020 (edited) I tried uninstalling and reinstalling the docker. No luck. Restarted the server. No luck. Restarted Letsencrypt/Swag docker. No luck. Added port 8920 like the old docker image had but was missing in the update. No luck. Using this repository emby/embyserver:latest https://registry.hub.docker.com/r/emby/embyserver/ Edited September 22, 2020 by Sab39
Luke 42078 Posted September 22, 2020 Posted September 22, 2020 It looks like you set port 80 as the server's http port? Try setting that back to default of 8096 and see if that allows you to start.
Sab39 8 Posted September 22, 2020 Author Posted September 22, 2020 (edited) 2 minutes ago, Luke said: It looks like you set port 80 as the server's http port? Try setting that back to default of 8096 and see if that allows you to start. using a reverse proxy via nginx. the port has to be set as 80 in the app settings for it to work, but the reverse proxy url goes to 8096. so for example... https://emby.myurl.com goes to my https://serveripaddress:8096 This set up has been working fine until this morning. Edited September 22, 2020 by Sab39
Sab39 8 Posted September 22, 2020 Author Posted September 22, 2020 Guess it couldn't hurt to change Public Port and httpServerPortNumber to 8096 (http) and PublicHttpsPort and HttpsPortNumber to 8920 (https) and see if it fixes it? Just don't want to completely kill what I've built. <?xml version="1.0"?> <ServerConfiguration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <EnableDebugLevelLogging>false</EnableDebugLevelLogging> <EnableAutoUpdate>true</EnableAutoUpdate> <LogFileRetentionDays>3</LogFileRetentionDays> <RunAtStartup>true</RunAtStartup> <IsStartupWizardCompleted>true</IsStartupWizardCompleted> <CachePath /> <EnableUPnP>false</EnableUPnP> <PublicPort>80</PublicPort> <PublicHttpsPort>443</PublicHttpsPort> <HttpServerPortNumber>80</HttpServerPortNumber> <HttpsPortNumber>443</HttpsPortNumber> <EnableHttps>true</EnableHttps> <IsPortAuthorized>true</IsPortAuthorized> <AutoRunWebApp>true</AutoRunWebApp> <EnableRemoteAccess>true</EnableRemoteAccess> <LogAllQueryTimes>false</LogAllQueryTimes> <EnableCaseSensitiveItemIds>true</EnableCaseSensitiveItemIds>
Luke 42078 Posted September 22, 2020 Posted September 22, 2020 So then you should have 80 as your nginx port and 8096 as your emby port...so that means try what i suggested.
Solution Luke 42078 Posted September 22, 2020 Solution Posted September 22, 2020 You have a port conflict by assigning both emby and nginx to port 80. The previous version was more forgiving by catching that and automatically switching back to 8096. We'll look at restoring that, but in the meantime you can resolve this on your own by setting emby back to 8096.
Sab39 8 Posted September 22, 2020 Author Posted September 22, 2020 14 minutes ago, Luke said: You have a port conflict by assigning both emby and nginx to port 80. The previous version was more forgiving by catching that and automatically switching back to 8096. We'll look at restoring that, but in the meantime you can resolve this on your own by setting emby back to 8096. just do it in that system file i copied and pasted above right?
Luke 42078 Posted September 22, 2020 Posted September 22, 2020 Yes, make sure emby server is shutdown first.
Sab39 8 Posted September 22, 2020 Author Posted September 22, 2020 3 minutes ago, Luke said: Yes, make sure emby server is shutdown first. worked like a charm. amazing. Thank you so much. For anyone else, just modify the system.xml in the config folder and change the http ports to 8096 and the http ports to 8920. Like Luke said, make sure EmbyServer is stopped before doing this. Restart emby server with the new server.xml file in the config folder. Then restart your letsencrypt/swag docker to get the reverse proxy working again. Then you're all set. Thanks again Luke. Sorry for the late response. Had to feed the kids lunch during the e-learning break from school. lol
Sab39 8 Posted September 23, 2020 Author Posted September 23, 2020 I had it break again for some reason last night, but got it working again. I would only use the settings below if you are using a reverse proxy with the letsencrpyt/swag docker the way spaceinvaderone's youtube tutorial showed how to set it up. I hope this helps folks with the same set up as me. Step 1: For the LetsEncrypt/Swag>nginx>proxy-confs> emby.subdomain.conf file: server { listen 443 ssl; listen [::]:443 ssl; server_name emby.*; include /config/nginx/ssl.conf; client_max_body_size 0; location / { include /config/nginx/proxy.conf; resolver 127.0.0.11 valid=30s; set $upstream_app EmbyServer; set $upstream_port 8096; set $upstream_proto http; proxy_pass $upstream_proto://$upstream_app:$upstream_port; proxy_set_header Range $http_range; proxy_set_header If-Range $http_if_range; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $http_connection; } } Step 2: Make sure the emby docker is stopped like Luke said and then... In the EmbyServer>config>system.xml file copy below (if you've been locked out like I was, you may need to make the public port 8096 and the publichttpsport 8902 just to get you into the emby webui first and log into emby on the local network, and then skip down to the emby webui settings. I think the system.xml will change once you set the settings in the emby webui, but Luke can correct me if I'm wrong on if that file will automatically change to the settings set in the webui): <EnableDebugLevelLogging>false</EnableDebugLevelLogging> <EnableAutoUpdate>true</EnableAutoUpdate> <LogFileRetentionDays>3</LogFileRetentionDays> <RunAtStartup>true</RunAtStartup> <IsStartupWizardCompleted>true</IsStartupWizardCompleted> <CachePath /> <EnableUPnP>true</EnableUPnP> <PublicPort>80</PublicPort> <PublicHttpsPort>443</PublicHttpsPort> <HttpServerPortNumber>8096</HttpServerPortNumber> <HttpsPortNumber>8920</HttpsPortNumber> <EnableHttps>true</EnableHttps> <IsPortAuthorized>true</IsPortAuthorized> <AutoRunWebApp>true</AutoRunWebApp> <EnableRemoteAccess>true</EnableRemoteAccess> <LogAllQueryTimes>false</LogAllQueryTimes> <EnableCaseSensitiveItemIds>true</EnableCaseSensitiveItemIds> Step 3: In the Emby Server Management WebUI settings: Click on Network -Local http port is 8096 -Local https port is 8920 (may need to add this in your docker settings as an additional port) -Remote http port is 80 -Remote https port is 443 (the reason http is 80 and https is 443 is because your reverse proxy nginx file is already using the plain url https://emby.yoururl.com to go to the 8096 port via https even though we have the settings for https to go to 8902. so by using https://emby.yoururl.com:443 you're essentially still using https://emby.yoururl.com like the nginx file is asking for the 443 on the end is essentially like not having it there at all). I'm probably explaining this poorly, but if you set up your reverse proxy like spaceinvaderone did in his unraid video tutorials using the letsencrypt docker (now swag), then this method will work for you. -add your external domain -Secure Connection Mode: Handled by reverse proxy -check the box Step 4 -Restart the letsencrypt/swag docker Step 5 -Restart the Emby docker Step 6 -Try your url from an external/cell network and it should go to your login page Good Luck
Luke 42078 Posted September 26, 2020 Posted September 26, 2020 Thanks for following up with this info. I'm looking at restoring the more forgiving behavior that we had before where it will automatically revert back to the default ports.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now