
Self-hosting Firefox the easy way
Yulei ChenFirefox (by jlesage) packages the full Firefox browser inside a Docker container with a web-based GUI. You get a complete desktop browser accessible from any device through your web browser - perfect for private browsing, testing, or accessing services from a fixed IP.
Sliplane makes deploying this setup effortless. With one-click deployment, you get a remote Firefox instance running in minutes - no server configuration, no reverse proxy, no VNC client needed.
Prerequisites
Before deploying, ensure you have a Sliplane account (free trial available).
Quick start
Sliplane provides one-click deployment with presets.
- Click the deploy button above
- Select a project
- Select a server (If you just signed up you get a 48-hour free trial server)
- Click Deploy!
About the preset
The one-click deploy above uses Sliplane's Firefox preset. Here's what it includes:
- jlesage/firefox Docker image with a built-in web UI (noVNC)
- Specific version tag (
v26.03.1) for stability - Persistent storage mounted to
/configfor browser profiles, bookmarks, and settings - Default resolution of 1920x1080
- Web interface exposed on port 5800 (handled automatically by Sliplane)
The jlesage Firefox image runs Firefox inside a lightweight desktop environment and streams it to your browser via noVNC. No additional software or VNC client is required on your end.
Next steps
Once Firefox is running on Sliplane, open it using the domain Sliplane provided (e.g. firefox-xxxx.sliplane.app). You'll see Firefox running in your browser right away - no login required by default.
Display settings
You can adjust the display resolution by changing these environment variables in your service settings:
| Variable | Default | Description |
|---|---|---|
DISPLAY_WIDTH | 1920 | Width of the browser window in pixels |
DISPLAY_HEIGHT | 1080 | Height of the browser window in pixels |
Securing access
The Firefox container does not require authentication by default. If you want to restrict access, you can set a password for the web interface by adding these environment variables:
| Variable | Description |
|---|---|
VNC_PASSWORD | Password required to connect to the VNC session |
SECURE_CONNECTION | Set to 1 to enable HTTPS within the container |
Persistent data
All browser data (bookmarks, history, extensions, downloads) is stored in the /config volume. This means your browsing session persists across container restarts and redeployments.
Logging
Container logs go to STDOUT, which works well with Sliplane's built-in log viewer. For more on Docker logging, check out how to use Docker logs.
Cost comparison
You can also self-host Firefox with other cloud providers. Here is a pricing comparison for the most common ones:
| Provider | vCPU | RAM | Disk | Monthly Cost | Note |
|---|---|---|---|---|---|
| Sliplane | 2 | 2 GB | 40 GB | €9 (~$10.65) | Flat rate, 1 TB bandwidth, SSL included |
| Fly.io | 2 | 2 GB | 40 GB | ~$18 | Disk and bandwidth billed separately |
| Render | 1 | 2 GB | 40 GB | ~$35 | 100 GB bandwidth, Disk billed separately |
| Railway | 2 | 2 GB | 40 GB | ~$67 + $20 plan | Pro plan floor, usage-based, bandwidth billed separately |
Click here to see how these numbers were calculated.
(Assuming an always-on instance running 730 hrs/month)
- Sliplane: flat €9/month for the Base server. Unlimited services on the same server, 1 TB egress and SSL included.
- Fly.io:
shared-cpu-2x2 GB = $11.83/mo + 40 GB volume × $0.15/GB = $6 -> ~$17.83/mo. Egress billed separately ($0.02/GB in EU). - Render: closest match is Standard ($25, 1 vCPU / 2 GB) plus 40 GB disk × $0.25/GB = $10 -> ~$35/mo. Stepping up to Pro (2 vCPU / 4 GB) costs $85/mo + disk.
- Railway (Pro plan): CPU 2 × $0.00000772/s × 2,628,000 s = $40.57; RAM 2 × $0.00000386/s × 2,628,000 s = $20.29; volume 40 × $0.00000006/s × 2,628,000 s = $6.31 -> ~$67/mo compute, plus the $20/mo Pro plan floor and $0.05/GB egress.
Bandwidth costs can add up fast on usage-based providers. Use our bandwidth cost comparison tool to see what your egress would cost on each platform.
FAQ
What can I use a self-hosted Firefox for?
A remote Firefox instance is useful for private browsing from a fixed server IP, accessing geo-restricted content, testing websites from a different location, or browsing safely in an isolated environment. It's also handy for running browser-based automations on a server.
How do I change the display resolution?
Update the DISPLAY_WIDTH and DISPLAY_HEIGHT environment variables in your Sliplane service settings, then redeploy. Common resolutions are 1920x1080, 1280x720, or 2560x1440.
How do I update Firefox?
Change the image tag in your service settings and redeploy. Check Docker Hub for the latest stable version tag.
Can I install browser extensions?
Yes. Since the /config volume persists your browser profile, any extensions you install through Firefox's add-on manager will survive container restarts. Just install them as you normally would in Firefox.
How do I add password protection?
Add a VNC_PASSWORD environment variable in your Sliplane service settings. After redeploying, the web interface will prompt for this password before granting access. For extra security, check out our guide on 5 easy steps to secure your server.