Run a Full Virtual Desktop in Docker with Neko
Ever wanted to spin up a full virtual desktop inside a Docker container and access it right from your browser? Meet Neko, a self-hosted virtual browser that runs in Docker and streams via WebRTC. No VNC, no clunky remote desktop protocols—just a smooth, low-latency browser experience.
Whether you're testing web apps in isolation, need a disposable browser for security research, or just want a lightweight way to share a desktop session with teammates, Neko makes it dead simple.
What It Does
Neko is a Docker-based virtual browser that runs Firefox, Chromium, or other browsers inside a container and streams the session to your browser using WebRTC. Unlike traditional remote desktop solutions, WebRTC ensures low-latency video and audio streaming, making it feel like you're interacting with a local browser.
Key features:
- Self-hosted – Run it on your own infra
- Multi-user – Share sessions with others (great for pair debugging)
- Hardware acceleration – Optional GPU passthrough for smoother rendering
- Persistent sessions – Keep your tabs open between connections
Why It’s Cool
Most remote browser solutions rely on VNC or RDP, which can be sluggish and lack real-time responsiveness. Neko’s WebRTC-first approach makes it feel like a native app, even when accessed remotely.
Some clever use cases:
- Testing in a clean environment – No local browser extensions interfering
- Secure browsing – Isolate risky browsing in a disposable container
- Demoing web apps – Share a live session without screen-sharing
- Lightweight cloud desktop – Run a full browser without spinning up a VM
How to Try It
Running Neko is straightforward with Docker:
docker run -d \
--name=neko \
-e NEKO_PASSWORD=neko \
-e NEKO_ADMIN=admin \
-p 8080:8080 \
-p 59000-59100:59000-59100/udp \
m1k1o/neko:firefox
Then, open http://localhost:8080
in your browser and log in.
For a live demo, check out the official instance.
Final Thoughts
Neko is one of those tools that feels surprisingly polished for a self-hosted project. The WebRTC implementation is smooth, and the Docker setup removes the usual friction of remote desktop tools.
If you’ve ever needed a quick, disposable browser or a way to collaborate on web sessions, Neko is worth a spin. It’s not a full desktop replacement, but for browser-based workflows, it’s hard to beat.
Got a cool use case for Neko? Let us know @githubprojects.