* Just a normal executable rather than something that needs a separate runtime - yes I know Docker is near universal on Linux for developers but less so for users and it doesn't integrate well with user permissions.
* Works fine for graphical applications (again this is possible with Docker but not zero configuration).
* Despite your complaint about size I still suspect it's a lot small than a complete Docker image.
* Works natively on Windows, unlike Docker
BTW the ideal mode is standalone rather than onefile - this outputs a directory including your program and separate files for any C extensions modules. That will let you chase down the offending module(s) that are hundreds of MB. Which in your case there must be - I distribute a small Qt program and even that is only 10s of MB.
Nuitka's primary aim is performance, more so than self-contained deployment. It's a bit strange to pit Nuitka against "shipping with Docker". It's also surprising to hear that you saw no performance benefits at all - but then again, perhaps your application isn't that much Python but just a small bit of Python wrapped around fast libraries written in e.g. C?
I was under the impression that speedup with Nuitka was fairly modest and you probably get faster with pypy
e.g. there's some benchmarks here https://pybenchmarks.org/ and they mostly seem to go: Python 3 -> Nuitka (slightly faster) -> Cython (much faster) -> PyPy (faster again)
So I always assumed the main advantage was more in producing a single binary
And I'd consider that a big advantage over "shipping with Docker" for many use cases, e.g. building cli tools
Python 3 really changed a lot, more than I realized. My experiences with Nuitka are against Python 2 from a couple of years back, at a point where Nuitka marketed itself using its performance increases and brought (at least) a 3-5x speedup on almost everything you threw at it.
What's the benefits over shipping as docker?