Install ERPNext on Windows using VirtualBox, Ubuntu Server, and port forwarding.
✅ This guide helps you install ERPNext on Windows using Ubuntu Server via VirtualBox — the most optimized and beginner-friendly approach.
What is ERP & Why ERPNext?
Enterprise Resource Planning (ERP) systems help organizations integrate various business processes across departments. ERPNext is a powerful open-source solution built on the Frappe Framework, but it natively supports only Linux.
If you’re a Windows user, don’t worry — we’ll show you how to run ERPNext using Ubuntu Server in VirtualBox.
Benefits of ERP Systems
- Centralized Data: Real-time access across departments.
- Automation: Automate tasks like invoicing, inventory, HR, and more.
- Efficiency: Streamline workflows and boost productivity.
- Reports: Visualize KPIs using platforms like Metabase or PowerBI.
Prerequisites
- Oracle VM VirtualBox
- Ubuntu Server 22.04 ISO
- System: 4GB RAM, 2-Core CPU, 20GB Disk (Minimum)
- Internet connection
Installation Steps
1. Update System Packages
sudo apt-get update
2. Install Git
sudo apt-get install git
3. Install Python
sudo apt-get install python3-dev python3.10-dev python3-setuptools python3-pip python3-distutils
4. Install MariaDB
sudo apt install mariadb-server mariadb-client
Use SPACE
, ARROW
, and ENTER
keys to handle prompts.
5. Install Redis
sudo apt-get install redis-server
6. Install Dependencies
sudo apt-get install xvfb libfontconfig wkhtmltopdf libmysqlclient-dev
7. Secure MySQL
sudo mysql_secure_installation
Enter details as follows:
- Switch to unix_socket auth:
Y
- Change root password:
Y
- Disallow remote root login:
N
- Remove anonymous/test DB:
Y
8. Update MySQL Config
sudo nano /etc/mysql/my.cnf
Paste:
[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
[mysql]
default-character-set = utf8mb4
Restart:
sudo service mysql restart
9. Install Node, NPM, Yarn
sudo apt install curl
curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | bash
source ~/.profile
nvm install 16.15.0
sudo apt-get install npm
sudo npm install -g yarn
10. Create ERP Folder
mkdir erp && cd erp
11. Install Frappe Bench
sudo pip3 install frappe-bench
12. Initialize Bench
bench init --frappe-branch version-14 frappe-bench
13. Enter Bench Directory
cd frappe-bench
14. Create a New Site
bench new-site yoursite.local
15. Install ERPNext App
bench get-app --branch version-14 erpnext
bench --site yoursite.local install-app erpnext
✅ ERPNext is now installed!
Access via Windows Browser
16. Enable SSH & Port Access
sudo apt install openssh-server
sudo ufw enable
sudo ufw allow 8000
sudo ufw allow 3306
17. Setup Port Forwarding in VirtualBox
- Go to Settings → Network → Advanced → Port Forwarding
- Add:
- Host Port:
8000
, Guest Port:8000
- Host Port:
3306
, Guest Port:3306
- Host Port:
18. Run Frappe Server
bench use yoursite.local
bench start
Open your browser and go to http://localhost:8000.
- Username:
Administrator
- Password: The one you set during site creation
📊 Final Thoughts
Using this method, you can run ERPNext on any Windows machine using Linux inside VirtualBox. It’s perfect for development, learning, and even lightweight production deployments.
If you want to set up Metabase or PowerBI on top of your ERPNext DB, just make sure port 3306
is open as shown above.
Need help? Drop your questions in the comments or visit codenetic.tech. 🚀
Frappe & ERPNext FAQs
Here are some commonly asked questions about Frappe, ERPNext, and the latest Frappe products.
- What is Frappe and how is it related to ERPNext?
Frappe is a full-stack web framework built on Python and MariaDB. ERPNext is an open-source ERP built using the Frappe framework. - Is Frappe Cloud necessary to run ERPNext?
No, you can self-host ERPNext using Frappe Bench on your own server or use Frappe Cloud for a managed experience. - What is Frappe HR?
Frappe HR is a modular HRMS built on top of the Frappe framework. It's designed to manage employee data, payroll, leave, and more. - Can I integrate third-party apps like WhatsApp or payment gateways with ERPNext?
Yes, ERPNext is API-driven and allows seamless integration with external services like WhatsApp, Razorpay, and more. - Do Frappe products support multi-tenancy?
Yes, Frappe supports multiple sites on the same instance, allowing true multi-tenancy out of the box.