Self-hosting Firefox the easy way

Self-hosting Firefox the easy way

Yulei Chen - Content-Engineerin bei sliplane.ioYulei Chen
4 min

Firefox (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.

SliplaneDeploy Firefox >
  1. Click the deploy button above
  2. Select a project
  3. Select a server (If you just signed up you get a 48-hour free trial server)
  4. 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 /config for 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:

VariableDefaultDescription
DISPLAY_WIDTH1920Width of the browser window in pixels
DISPLAY_HEIGHT1080Height 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:

VariableDescription
VNC_PASSWORDPassword required to connect to the VNC session
SECURE_CONNECTIONSet 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:

ProvidervCPURAMDiskMonthly CostNote
Sliplane22 GB40 GB€9 (~$10.65)Flat rate, 1 TB bandwidth, SSL included
Fly.io22 GB40 GB~$18Disk and bandwidth billed separately
Render12 GB40 GB~$35100 GB bandwidth, Disk billed separately
Railway22 GB40 GB~$67 + $20 planPro 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-2x 2 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.

Self-host Firefox now - It's easy!

Sliplane gives you a private, remote Firefox browser with one click.