Skip to content

Python error when testing as a OCI image #283

@popeter1

Description

@popeter1

I've completed the following steps:

  • Read Loop Warning on Readme
  • Done the troubleshooting from Readme
  • Checked if such issue already exists
  • Checked other websites with Cloudflare Turnstile
  • I am able to access the webpage from my browser

If checked other websites with Cloudflare Turnstile:

  • Other websites do work.
  • Other websites do not work.

OS/Docker Host

Proxmox OCI

Platform and model

MS-01

Architecture

X86

Example website/URL that does not work

No response

Describe the bug

testing running byparr as a OCI LXC with latest tech preview on Proxmox 9.1
LXC/OCI starts fine but any attempt my Indexarr to connect throws a Python error and fails

Docker Compose config

No response

Prowlarr Logs

025-11-23 14:57:04.0|Error|FlareSolverr|Proxy validation failed

[v2.3.0.5236] NzbDrone.Common.Http.HttpException: HTTP request failed: [500:InternalServerError] [POST] at [http://X.X.X.X:8191/v1]
at NzbDrone.Common.Http.HttpClient.ExecuteAsync(HttpRequest request) in ./NzbDrone.Common/Http/HttpClient.cs:line 128
at NzbDrone.Common.Http.HttpClient.Execute(HttpRequest request) in ./NzbDrone.Common/Http/HttpClient.cs:line 137
at NzbDrone.Core.IndexerProxies.FlareSolverr.FlareSolverr.Test() in ./NzbDrone.Core/IndexerProxies/FlareSolverr/FlareSolverr.cs:line 189
Internal Server Error

2025-11-23 14:57:04.0|Warn|ProwlarrErrorPipeline|Invalid request Validation failed:
-- Host: Unable to connect to proxy: HTTP request failed: [500:InternalServerError] [POST] at [http://X.X.X.X:8191/v1]. Check the log surrounding this error for details
2025-11-23 14:57:04.0|Debug|Api|[POST] /api/v1/indexerProxy/test: 400.BadRequest (574 ms)
2025-11-23 14:57:32.9|Debug|FlareSolverr|Cloudflare Detected, Applying FlareSolverr Proxy FlareSolverr to request https://prowlarr.servarr.com/v1/ping
2025-11-23 14:57:33.2|Warn|HttpClient|HTTP Error - Res: HTTP/1.1 [POST] http://10.0.40.7:8191/v1: 500.InternalServerError (21 bytes)
Internal Server Error
2025-11-23 14:57:33.2|Error|FlareSolverr|Proxy validation failed

[v2.3.0.5236] NzbDrone.Common.Http.HttpException: HTTP request failed: [500:InternalServerError] [POST] at [http://X.X.X.X:8191/v1]
at NzbDrone.Common.Http.HttpClient.ExecuteAsync(HttpRequest request) in ./NzbDrone.Common/Http/HttpClient.cs:line 128
at NzbDrone.Common.Http.HttpClient.Execute(HttpRequest request) in ./NzbDrone.Common/Http/HttpClient.cs:line 137
at NzbDrone.Core.IndexerProxies.FlareSolverr.FlareSolverr.Test() in ./NzbDrone.Core/IndexerProxies/FlareSolverr/FlareSolverr.cs:line 189
Internal Server Error

2025-11-23 14:57:33.2|Warn|ProwlarrErrorPipeline|Invalid request Validation failed:
-- Host: Unable to connect to proxy: HTTP request failed: [500:InternalServerError] [POST] at [http://X.X.X.X:8191/v1]. Check the log surrounding this error for details

Byparr Logs

INFO: From: Y.Y.Y.Y at 2025-11-23 14:59:11: https://prowlarr.servarr.com/v1/ping
INFO: Y.Y.Y.Y:34232 - "POST /v1 HTTP/1.1" 500 Internal Server Error
ERROR: Exception in ASGI application

  • Exception Group Traceback (most recent call last):
    | File "/app/.venv/lib/python3.13/site-packages/starlette/_utils.py", line 76, in collapse_excgroups
    | yield
    | File "/app/.venv/lib/python3.13/site-packages/starlette/middleware/base.py", line 178, in call
    | async with anyio.create_task_group() as task_group:
    | ~~~~~~~~~~~~~~~~~~~~~~~^^
    | File "/app/.venv/lib/python3.13/site-packages/anyio/_backends/_asyncio.py", line 767, in aexit
    | raise BaseExceptionGroup(
    | "unhandled errors in a TaskGroup", self._exceptions
    | )
    | ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception)
    +-+---------------- 1 ----------------
    | Traceback (most recent call last):
    | File "/app/.venv/lib/python3.13/site-packages/uvicorn/protocols/http/httptools_impl.py", line 409, in run_asgi
    | result = await app( # type: ignore[func-returns-value]
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    | self.scope, self.receive, self.send
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    | )
    | ^
    | File "/app/.venv/lib/python3.13/site-packages/uvicorn/middleware/proxy_headers.py", line 60, in call
    | return await self.app(scope, receive, send)
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    | File "/app/.venv/lib/python3.13/site-packages/fastapi/applications.py", line 1054, in call
    | await super().call(scope, receive, send)
    | File "/app/.venv/lib/python3.13/site-packages/starlette/applications.py", line 112, in call
    | await self.middleware_stack(scope, receive, send)
    | File "/app/.venv/lib/python3.13/site-packages/starlette/middleware/errors.py", line 187, in call
    | raise exc
    | File "/app/.venv/lib/python3.13/site-packages/starlette/middleware/errors.py", line 165, in call
    | await self.app(scope, receive, _send)
    | File "/app/.venv/lib/python3.13/site-packages/starlette/middleware/base.py", line 177, in call
    | with recv_stream, send_stream, collapse_excgroups():
    | ~~~~~~~~~~~~~~~~~~^^
    | File "/root/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/lib/python3.13/contextlib.py", line 162, in exit
    | self.gen.throw(value)
    | ~~~~~~~~~~~~~~^^^^^^^
    | File "/app/.venv/lib/python3.13/site-packages/starlette/_utils.py", line 82, in collapse_excgroups
    | raise exc
    | File "/app/.venv/lib/python3.13/site-packages/starlette/middleware/base.py", line 179, in call
    | response = await self.dispatch_func(request, call_next)
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    | File "/app/src/middlewares.py", line 22, in dispatch
    | response = await call_next(request)
    | ^^^^^^^^^^^^^^^^^^^^^^^^
    | File "/app/.venv/lib/python3.13/site-packages/starlette/middleware/base.py", line 154, in call_next
    | raise app_exc
    | File "/app/.venv/lib/python3.13/site-packages/starlette/middleware/base.py", line 141, in coro
    | await self.app(scope, receive_or_disconnect, send_no_error)
    | File "/app/.venv/lib/python3.13/site-packages/starlette/middleware/gzip.py", line 20, in call
    | await responder(scope, receive, send)
    | File "/app/.venv/lib/python3.13/site-packages/starlette/middleware/gzip.py", line 39, in call
    | await self.app(scope, receive, self.send_with_gzip)
    | File "/app/.venv/lib/python3.13/site-packages/starlette/middleware/exceptions.py", line 62, in call
    | await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
    | File "/app/.venv/lib/python3.13/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
    | raise exc
    | File "/app/.venv/lib/python3.13/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
    | await app(scope, receive, sender)
    | File "/app/.venv/lib/python3.13/site-packages/starlette/routing.py", line 715, in call
    | await self.middleware_stack(scope, receive, send)
    | File "/app/.venv/lib/python3.13/site-packages/starlette/routing.py", line 735, in app
    | await route.handle(scope, receive, send)
    | File "/app/.venv/lib/python3.13/site-packages/starlette/routing.py", line 288, in handle
    | await self.app(scope, receive, send)
    | File "/app/.venv/lib/python3.13/site-packages/starlette/routing.py", line 76, in app
    | await wrap_app_handling_exceptions(app, request)(scope, receive, send)
    | File "/app/.venv/lib/python3.13/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
    | raise exc
    | File "/app/.venv/lib/python3.13/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
    | await app(scope, receive, sender)
    | File "/app/.venv/lib/python3.13/site-packages/starlette/routing.py", line 73, in app
    | response = await f(request)
    | ^^^^^^^^^^^^^^^^
    | File "/app/.venv/lib/python3.13/site-packages/fastapi/routing.py", line 292, in app
    | solved_result = await solve_dependencies(
    | ^^^^^^^^^^^^^^^^^^^^^^^^^
    | ...<6 lines>...
    | )
    | ^
    | File "/app/.venv/lib/python3.13/site-packages/fastapi/dependencies/utils.py", line 634, in solve_dependencies
    | solved = await solve_generator(
    | ^^^^^^^^^^^^^^^^^^^^^^
    | call=call, stack=async_exit_stack, sub_values=solved_result.values
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    | )
    | ^
    | File "/app/.venv/lib/python3.13/site-packages/fastapi/dependencies/utils.py", line 560, in solve_generator
    | return await stack.enter_async_context(cm)
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    | File "/root/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/lib/python3.13/contextlib.py", line 668, in enter_async_context
    | result = await _enter(cm)
    | ^^^^^^^^^^^^^^^^
    | File "/root/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/lib/python3.13/contextlib.py", line 214, in aenter
    | return await anext(self.gen)
    | ^^^^^^^^^^^^^^^^^^^^^
    | File "/app/src/utils.py", line 64, in get_camoufox
    | async with AsyncCamoufox(
    | ~~~~~~~~~~~~~^
    | main_world_eval=True,
    | ^^^^^^^^^^^^^^^^^^^^^
    | ...<8 lines>...
    | disable_coop=True, # add this when creating Camoufox instance
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    | ) as browser_raw:
    | ^
    | File "/app/.venv/lib/python3.13/site-packages/camoufox/async_api.py", line 31, in aenter
    | self.browser = await AsyncNewBrowser(_playwright, **self.launch_options)
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    | File "/app/.venv/lib/python3.13/site-packages/camoufox/async_api.py", line 88, in AsyncNewBrowser
    | from_options = await asyncio.get_event_loop().run_in_executor(
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    | ...<2 lines>...
    | )
    | ^
    | File "/root/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/lib/python3.13/concurrent/futures/thread.py", line 59, in run
    | result = self.fn(*self.args, **self.kwargs)
    | File "/app/.venv/lib/python3.13/site-packages/camoufox/utils.py", line 489, in launch_options
    | add_default_addons(addons, exclude_addons)
    | ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
    | File "/app/.venv/lib/python3.13/site-packages/camoufox/addons.py", line 43, in add_default_addons
    | with Lock():
    | ~~~~^^
    | File "/root/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/lib/python3.13/multiprocessing/context.py", line 68, in Lock
    | return Lock(ctx=self.get_context())
    | File "/root/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/lib/python3.13/multiprocessing/synchronize.py", line 169, in init
    | SemLock.init(self, SEMAPHORE, 1, 1, ctx=ctx)
    | ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    | File "/root/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/lib/python3.13/multiprocessing/synchronize.py", line 57, in init
    | sl = self._semlock = _multiprocessing.SemLock(
    | ~~~~~~~~~~~~~~~~~~~~~~~~^
    | kind, value, maxvalue, self._make_name(),
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    | unlink_now)
    | ^^^^^^^^^^^
    | FileNotFoundError: [Errno 2] No such file or directory
    +------------------------------------

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/app/.venv/lib/python3.13/site-packages/uvicorn/protocols/http/httptools_impl.py", line 409, in run_asgi
result = await app( # type: ignore[func-returns-value]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
self.scope, self.receive, self.send
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/app/.venv/lib/python3.13/site-packages/uvicorn/middleware/proxy_headers.py", line 60, in call
return await self.app(scope, receive, send)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/app/.venv/lib/python3.13/site-packages/fastapi/applications.py", line 1054, in call
await super().call(scope, receive, send)
File "/app/.venv/lib/python3.13/site-packages/starlette/applications.py", line 112, in call
await self.middleware_stack(scope, receive, send)
File "/app/.venv/lib/python3.13/site-packages/starlette/middleware/errors.py", line 187, in call
raise exc
File "/app/.venv/lib/python3.13/site-packages/starlette/middleware/errors.py", line 165, in call
await self.app(scope, receive, _send)
File "/app/.venv/lib/python3.13/site-packages/starlette/middleware/base.py", line 177, in call
with recv_stream, send_stream, collapse_excgroups():
~~~~~~~~~~~~~~~~~~^^
File "/root/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/lib/python3.13/contextlib.py", line 162, in exit
self.gen.throw(value)
~~~~~~~~~~~~~~^^^^^^^
File "/app/.venv/lib/python3.13/site-packages/starlette/_utils.py", line 82, in collapse_excgroups
raise exc
File "/app/.venv/lib/python3.13/site-packages/starlette/middleware/base.py", line 179, in call
response = await self.dispatch_func(request, call_next)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/app/src/middlewares.py", line 22, in dispatch
response = await call_next(request)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/app/.venv/lib/python3.13/site-packages/starlette/middleware/base.py", line 154, in call_next
raise app_exc
File "/app/.venv/lib/python3.13/site-packages/starlette/middleware/base.py", line 141, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
File "/app/.venv/lib/python3.13/site-packages/starlette/middleware/gzip.py", line 20, in call
await responder(scope, receive, send)
File "/app/.venv/lib/python3.13/site-packages/starlette/middleware/gzip.py", line 39, in call
await self.app(scope, receive, self.send_with_gzip)
File "/app/.venv/lib/python3.13/site-packages/starlette/middleware/exceptions.py", line 62, in call
await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
File "/app/.venv/lib/python3.13/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
raise exc
File "/app/.venv/lib/python3.13/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "/app/.venv/lib/python3.13/site-packages/starlette/routing.py", line 715, in call
await self.middleware_stack(scope, receive, send)
File "/app/.venv/lib/python3.13/site-packages/starlette/routing.py", line 735, in app
await route.handle(scope, receive, send)
File "/app/.venv/lib/python3.13/site-packages/starlette/routing.py", line 288, in handle
await self.app(scope, receive, send)
File "/app/.venv/lib/python3.13/site-packages/starlette/routing.py", line 76, in app
await wrap_app_handling_exceptions(app, request)(scope, receive, send)
File "/app/.venv/lib/python3.13/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
raise exc
File "/app/.venv/lib/python3.13/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "/app/.venv/lib/python3.13/site-packages/starlette/routing.py", line 73, in app
response = await f(request)
^^^^^^^^^^^^^^^^
File "/app/.venv/lib/python3.13/site-packages/fastapi/routing.py", line 292, in app
solved_result = await solve_dependencies(
^^^^^^^^^^^^^^^^^^^^^^^^^
...<6 lines>...
)
^
File "/app/.venv/lib/python3.13/site-packages/fastapi/dependencies/utils.py", line 634, in solve_dependencies
solved = await solve_generator(
^^^^^^^^^^^^^^^^^^^^^^
call=call, stack=async_exit_stack, sub_values=solved_result.values
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/app/.venv/lib/python3.13/site-packages/fastapi/dependencies/utils.py", line 560, in solve_generator
return await stack.enter_async_context(cm)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/lib/python3.13/contextlib.py", line 668, in enter_async_context
result = await _enter(cm)
^^^^^^^^^^^^^^^^
File "/root/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/lib/python3.13/contextlib.py", line 214, in aenter
return await anext(self.gen)
^^^^^^^^^^^^^^^^^^^^^
File "/app/src/utils.py", line 64, in get_camoufox
async with AsyncCamoufox(
~~~~~~~~~~~~~^
main_world_eval=True,
^^^^^^^^^^^^^^^^^^^^^
...<8 lines>...
disable_coop=True, # add this when creating Camoufox instance
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
) as browser_raw:
^
File "/app/.venv/lib/python3.13/site-packages/camoufox/async_api.py", line 31, in aenter
self.browser = await AsyncNewBrowser(_playwright, **self.launch_options)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/app/.venv/lib/python3.13/site-packages/camoufox/async_api.py", line 88, in AsyncNewBrowser
from_options = await asyncio.get_event_loop().run_in_executor(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...<2 lines>...
)
^
File "/root/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/lib/python3.13/concurrent/futures/thread.py", line 59, in run
result = self.fn(*self.args, **self.kwargs)
File "/app/.venv/lib/python3.13/site-packages/camoufox/utils.py", line 489, in launch_options
add_default_addons(addons, exclude_addons)
~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
File "/app/.venv/lib/python3.13/site-packages/camoufox/addons.py", line 43, in add_default_addons
with Lock():
~~~~^^
File "/root/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/lib/python3.13/multiprocessing/context.py", line 68, in Lock
return Lock(ctx=self.get_context())
File "/root/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/lib/python3.13/multiprocessing/synchronize.py", line 169, in init
SemLock.init(self, SEMAPHORE, 1, 1, ctx=ctx)
~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/lib/python3.13/multiprocessing/synchronize.py", line 57, in init
sl = self._semlock = _multiprocessing.SemLock(
~~~~~~~~~~~~~~~~~~~~~~~~^
kind, value, maxvalue, self._make_name(),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
unlink_now)
^^^^^^^^^^^
FileNotFoundError: [Errno 2] No such file or directory

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions