ERPNext is an open-source business software stack that helps companies manage finances, sales, inventory, and HR from one place. It’s a full enterprise resource planning software built on the powerful Frappe framework. But there’s a catch — it doesn’t run directly on Windows.
If you’re using a Windows host, you can’t install ERPNext natively, because the core system relies on a Linux OS. That’s where Oracle VM VirtualBox and an Ubuntu Server 24.04 LTS guest come in. This guide walks through a complete ERPNext VirtualBox setup for your laptop or PC.
Table of Contents
- What Is ERP and ERPNext?
- Why ERPNext Requires Linux
- Prerequisites for Installing ERPNext on Windows
- Step-by-Step Installation Guide
- Configure Port Forwarding for Windows Access
- Run the ERPNext Server
- Common Issues and Fixes
- Optional: Enable Remote Access or Analytics
- Conclusion
What Is ERP and ERPNext?
Enterprise Resource Planning (ERP) means using one tool to run your business — from sales to payroll. A system like ERPNext gives you a centralized data management platform and real-time insights through a built-in reporting dashboard.
What makes ERPNext special is that it’s an open-source ERP system. You get modules like CRM, integrated finance & inventory, and project tracking without a license fee — a solid business-process automation option for small teams or fast-growing companies.
Why ERPNext Requires Linux
The Frappe framework, which powers ERPNext, is built specifically for Linux. There’s no official support for installing it directly on a Windows host.
To work around that, we run a Linux guest inside Windows using Oracle VM VirtualBox. A NAT network with port forwarding gives you full access to ERPNext through a browser at localhost:8000, as if it were running natively.
Prerequisites for Installing ERPNext on Windows
Before you begin:
- Download and install Oracle VM VirtualBox from the official site.
- Download the Ubuntu Server 24.04 LTS ISO — this is the Linux guest you’ll run inside VirtualBox.
- Create the VM with at least 4GB RAM, 2 CPUs, and 50GB disk space.
- Complete the Ubuntu installation (our Ubuntu 24.04 install guide covers the Frappe/ERPNext side once Ubuntu itself is up), enable OpenSSH, and confirm you can SSH into the VM before moving on.
Step-by-Step Installation Guide
Update Ubuntu Packages
After logging in, update your system packages:
sudo apt update
sudo apt upgrade
This makes sure your Ubuntu Server is ready for everything that follows.
Install Dependencies
You’ll need Git, Python’s dev headers, Redis, and wkhtmltopdf’s build dependencies:
sudo apt install git python3-dev python3-setuptools python3-pip redis-server libmysqlclient-dev xvfb libfontconfig
Install and Configure MariaDB
Install and secure MariaDB:
sudo apt install mariadb-server
sudo mysql_secure_installation
Then open /etc/mysql/mariadb.conf.d/50-server.cnf and make sure it sets utf8mb4 as the default — this matters for ERPNext’s multi-language fields and emoji support:
[mysqld]
innodb-file-per-table = 1
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
[mysql]
default-character-set = utf8mb4
Skip
innodb-file-formatandinnodb-large-prefixif you’ve seen them in older guides — both were removed in MariaDB 10.3+, and leaving them in will stopmysqldfrom starting on Ubuntu 24.04’s MariaDB 10.11.
Restart MariaDB to apply the change:
sudo systemctl restart mariadb
Install Node.js and Yarn
Don’t install Node from apt — it’s almost always out of date. Use nvm so you can pin the exact version Frappe needs:
sudo apt install curl
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
source ~/.bashrc
nvm install 18
nvm alias default 18
Then enable Yarn through Corepack, which ships with modern Node — no separate global install needed:
corepack enable
corepack prepare yarn@stable --activate
Install Frappe Bench and ERPNext
sudo -H pip3 install frappe-bench --break-system-packages
bench init frappe-bench --frappe-branch version-15
cd frappe-bench
bench new-site yoursite.local
bench get-app erpnext --branch version-15
bench --site yoursite.local install-app erpnext
That’s the bench setup, site creation, and app install done.
Configure Port Forwarding for Windows Access
In VirtualBox, open your VM’s settings, then Network → Advanced → Port Forwarding, and forward:
- Host Port 8000 → Guest Port 8000
- Host Port 3306 → Guest Port 3306
Then allow those ports through the guest’s firewall:
sudo ufw allow 8000
sudo ufw allow 3306
With port forwarding in place, localhost:8000 on your Windows host reaches ERPNext running inside the VM.
Run the ERPNext Server
Switch to your site and start the bench:
bench use yoursite.local
bench start
Open your browser to http://localhost:8000 and log in with:
- Username: Administrator
- Password: the one you set during site creation
You now have ERPNext running on your Windows host, through VirtualBox.
Common Issues and Fixes
- MariaDB won’t connect — check it’s actually running:
sudo systemctl status mariadb - Can’t reach
localhost:8000— confirm ports 8000 and 3306 are open withsudo ufw status, and that the VirtualBox port-forwarding rules above are saved - SSH connection refused — restart the SSH service:
sudo systemctl restart ssh
If none of that helps, resetting the VM’s network adapter (switch it to a different NAT adapter and back) clears up most remaining connectivity issues.
Optional: Enable Remote Access or Analytics
To analyze your data externally, point a tool like Power BI, Metabase, or Tableau at your MariaDB instance — keep port 3306 open and whitelist your own IP rather than opening it to everyone.
This gets you real-time reporting dashboards for finance, CRM, and more, built on top of your ERPNext data.
Conclusion
You’ve now installed ERPNext on Windows using Oracle VM VirtualBox and Ubuntu Server — a reliable, low-cost way to run it locally. Keep the VM updated and the firewall rules tight, and you’ve got full control of your own ERPNext instance, from the CRM to inventory, without needing a dedicated Linux machine.
FAQs
Can I install ERPNext directly on Windows?
No — ERPNext requires Linux, so you run it inside a VirtualBox VM with Ubuntu Server as the guest.
What is the best way to run ERPNext on Windows?
A self-hosted ERPNext instance inside Oracle VM VirtualBox, with port forwarding configured as above, is the most stable option for local use.
What ports need to be open for ERPNext?
sudo ufw allow 8000 for web access, and sudo ufw allow 3306 if you want external tools to reach the database.
How do I access ERPNext from my browser?
Visit localhost:8000 on your Windows host and log in as Administrator.



Comments
Start the conversation — be the first to share your thoughts.