Step-by-Step Guide: Install Frappe ERPNext on Windows 11 Using Docker 2025

If you’ve been searching for a way to install ERPNext on Windows 11 without endless headaches, you’re in the right place. ERPNext is a powerful ERP system open sour

 · 6 min read

If you’ve been searching for a way to install ERPNext on Windows 11 in 2025 without endless headaches, you’re in the right place. ERPNext is a powerful ERP system open source, but setting it up on Windows directly can get tricky. That’s where Docker comes in.

With Docker, you get a clean, isolated environment that plays nicely with your system. Combine that with VS Code’s Dev Containers, and you’ve got a development setup that’s smooth, portable, and far less error-prone. In this guide, I’ll walk you through every step — from installing prerequisites to running your first ERPNext site.

But if you have window 10 and know how to install ERPNext on Window 10 read this article.

Pre-requisites

Before diving into commands, make sure you’ve got these tools ready:

  1. Docker Desktop – the container platform that runs ERPNext.
  2. Git – needed to clone the frappe_docker repository.
  3. Windows 11 – required for Docker Desktop compatibility.
  4. VS Code – your editor and Dev Container manager.

Once you get these, you’re ready to begin the actual ERPNext Docker setup.

STEP 1: Check Docker and Git Versions

Before touching ERPNext, confirm Docker and Git are installed properly. Open a terminal (PowerShell or Command Prompt) and run:

docker version
git version

If you see version numbers, you’re good to go. If you don’t, reinstall Docker Desktop or Git before moving forward. Skipping this step could lead to frustrating ERPNext troubleshooting on Windows later.

STEP 2: Clone frappe_docker and Move Into the Folder

Now let’s grab the official frappe_docker repository. This contains everything you need to run ERPNext inside Docker.

Run the following commands:

git clone https://github.com/frappe/frappe_docker.git
cd frappe_docker
  1. The first line downloads the official frappe_docker code from GitHub.
  2. The second puts you inside the folder so you can start working with it.

Using the official repo ensures you’re always up to date with patches and fixes — essential for a reliable Frappe ERPNext installation tutorial.

STEP 3: Copy Example DevContainer and VS Code Configs

Inside the cloned repository, you’ll find example configs. These are like blueprints for setting up your development container in VS Code. Instead of writing them from scratch, just copy them into place.

  1. Copy the example DevContainer config:
  2. From devcontainer-example → to .devcontainer
  3. Copy the example VS Code config:
  4. From development/vscode-example → to development/.vscode

This step gives you a preconfigured environment, so when you open the project in VS Code, everything just works. No messy manual setup.

~ Think of it like moving into a furnished apartment instead of starting with bare walls.

STEP 4: Install VS Code Dev Containers Extension

With the example configs in place, you’ll need one more tool to make everything work inside VS Code: the Dev Containers extension.

Here’s what to do:

  1. Open VS Code.
  2. Go to the Extensions Marketplace.
  3. Search for “Dev Containers” and install it.

This extension allows VS Code to run directly inside Docker containers. Without it, the configs you just copied won’t do much. Once installed, you’re ready to fire up your ERPNext project in a container.

STEP 5: Open frappe_docker in VS Code and Reopen in Container

Now comes the fun part — launching your ERPNext with VS Code dev containers.

  1. Open the frappe_docker folder in VS Code.
  2. Press Ctrl + Shift + P to bring up the Command Palette.
  3. Type and select: Remote-Containers: Reopen in Container.

~You can also click the green icon in the bottom left corner to access the container menu.

If everything’s set up correctly, VS Code will restart and reload inside the container. It feels just like your normal editor, but everything’s running within Docker.

Common Error – Port 80 Conflict

Sometimes you’ll see this error:

Error starting userland proxy: listen tcp 0.0.0.0:80: bind: An attempt was made to access a socket in a way forbidden by its access permissions

Fix it by running this in CMD:

netsh http add iplisten ipaddress=::

That command frees up port 80 for Docker.

STEP 6: Initialize Frappe Bench with Version 14

With the container ready, it’s time to set up Frappe Bench. This is the tool that manages sites, apps, and services in ERPNext.

Run these commands:

bench init --skip-redis-config-generation --frappe-branch version-14 frappe-bench
cd frappe-bench
  1. The first line creates a new bench with Frappe version 14.
  2. The second moves you into the bench directory, where most of your future work happens.

At this point, you’ve got a clean workspace ready for ERPNext.

STEP 7: Configure Bench Hosts

ERPNext needs to know where its database and caching services live. Since we’re running in Docker, we have to tell bench to use the right containers instead of localhost.

Run these commands inside the container:

bench set-config -g db_host mariadb
bench set-config -g redis_cache redis://redis-cache:6379
bench set-config -g redis_queue redis://redis-queue:6379
bench set-config -g redis_socketio redis://redis-socketio:6379

If those fail for some reason, edit the common_site_config.json file manually:

{
 "db_host": "mariadb",
 "redis_cache": "redis://redis-cache:6379",
 "redis_queue": "redis://redis-queue:6379",
 "redis_socketio": "redis://redis-socketio:6379"
}

This ensures ERPNext MariaDB setup and Redis cache configuration ERPNext are properly linked.

STEP 8: Create a New Site

ERPNext runs on sites, and each one is like a self-contained system. Let’s create your first site.

Run:

bench new-site d-code.localhost --no-mariadb-socket

Important details:

  1. The site name must end with .localhost for local testing.
  2. The MariaDB root password is set to 123 in this setup.

Once complete, you’ll have your first ERPNext site creation ready to go.

STEP 9: Enable Developer Mode

Want to customize ERPNext? You’ll need to switch on ERPNext developer mode.

Run:

bench --site d-code.localhost set-config developer_mode 1
bench --site d-code.localhost clear-cache

The first command flips developer mode on. The second clears the cache so changes take effect. Without this, you’re limited to just using ERPNext “as is.”

STEP 10: Install ERPNext

Now the exciting part — installing ERPNext itself. This is where your site actually becomes a working ERP system open source.

Run:

bench get-app --branch version-14 --resolve-deps erpnext
bench --site d-code.localhost install-app erpnext
  1. The first line fetches ERPNext version 14.
  2. The second installs it onto your site.

After this step, ERPNext is fully connected to your bench environment.

STEP 11: Start Frappe Bench

The finish line is here! Start the bench with:

bench start

You’ll see logs appear in your terminal — that means services are running.

Now open your browser and go to:

http://d-code.localhost:8000

Log in using:

  1. Username: Administrator
  2. Password: the one you set during site creation

And that’s it! You’ve completed the full ERPNext Docker setup and successfully learned how to install ERPNext on Windows 11.

Conclusion

And there you have it — a complete guide to install ERPNext on Windows 11 using Docker. By following these steps, you:

  1. Installed all prerequisites (Docker, Git, VS Code).
  2. Cloned and configured the official frappe_docker repo.
  3. Set up Frappe Bench with version 14.
  4. Configured services like MariaDB and Redis.
  5. Created a new site, enabled developer mode, and installed ERPNext.
  6. Finally, launched ERPNext in your browser at http://d-code.localhost:8000.

The real win here? You now have a fully functional ERPNext instance running locally — safe to test, customize, and explore without messing up your main system. Docker makes everything cleaner, easier, and more reliable.

If you also want to know how to install ERPNext on Ubuntu 24.04 LTS read this article for more information.

Pros and Cons of Running ERPNext in Docker

Here’s a quick breakdown to help you understand why this setup works so well:

Pros

  1. Isolation: Keeps ERPNext separate from your Windows environment.
  2. Portability: Easily move your setup across machines.
  3. Easy Reset: Mess something up? Just rebuild the container.
  4. Consistency: Works the same on any Windows 11 system.

Cons

  1. Learning Curve: Docker and containers may feel new at first.
  2. Performance Overhead: Slightly heavier than native installs.
  3. Not Production Ready: Best for local development, not large-scale deployment.

If your goal is learning, testing, or development, Docker is hands-down the easiest way to get started with ERPNext.

FAQs

1. Can I run ERPNext without Docker on Windows 11?

Technically yes, but it’s painful. Direct installs on Windows often run into dependency and compatibility issues. Docker avoids all that.

2. What if I forget my ERPNext Administrator password?

You can reset it from the bench command line:

bench --site d-code.localhost set-admin-password yournewpassword

3. Is ERPNext free to use?

Yes — ERPNext is an ERP system open source, licensed under GPL. You can use it, customize it, and even contribute back to the community.

4. Can I install apps other than ERPNext with this setup?

Absolutely. Once Frappe Bench is running, you can use bench get-app to install other Frappe-based apps.

5. What if Docker is running slowly on Windows 11?

Make sure WSL 2 is enabled and allocated enough RAM/CPU in Docker Desktop settings. Performance improves dramatically with the right configuration.

Schedule Free Consultation

Talk to our experts


Add a comment
Ctrl+Enter to add comment

A
Ali 2 weeks ago

nice