I Wasted My First Month Learning Frappe ERPNext with Docker (But I’m Not Quitting)


📅 How It All Started (and Fell Apart)
I began working with Frappe in the second last week of May 2025.
At that time:
I was juggling 2–3 frontend interviews per week.
I was still working with a German startup on a contract basis.
And I was completely exhausted from context-switching between interviews, work, and learning new tech.
Eventually, I reached a breaking point and asked myself:
\> "What if I just stopped everything else and focused fully on Frappe?"
So I made a tough decision:
❌ Stopped scheduling interviews
❌ Resigned from my contract
✅ Committed fully to learning Frappe + ERPNext for the next 3 months
Even now, I keep getting recruiter calls — and it's hard to say no when I need a job — but I’m staying focused on the bigger picture.
🧭 Why I Chose Frappe (and Got a Wake-Up Call)
I was job hunting and applying to 10–20 startups.
One company using Frappe ERP caught my eye, I cold-approached the CEO directly. Surprisingly, they gave me a chance to interview even though they had no open roles.
I cleared the intro round and got into the technical round. But then...
❌ I got rejected due to weak DBMS understanding and Python DSA basics.
But the team told me:
\> “If you improve and reapply, we’d love to consider you again.”
That single feedback flipped a switch.
I knew: this is my sign.
I immediately committed to learning Frappe seriously, from the ground up.
😖 Mistakes I Made (and the Month I Wasted)
Let’s just say:
My entire first month was spent trying to set up Frappe the wrong way.
Why?
I run Endeavour Linux (Arch-based), and Frappe isn’t fully compatible.
So I went with Docker and discovered the frappe_docker repo.
But I had zero clue about the difference between production and development setup.
So I:
Used the wrong Docker setup.
Didn’t understand what “bench” does.
Got lost in networking issues with Redis, MariaDB, Nginx.
Googled for hours. Asked GPTs, Claude, and other AIs.
Bugged Telegram groups and forum threads.
Watched random YouTube tutorials with no clear answers.
It was chaotic.
But in all that mess, I started to understand:
\> What actually is a production setup?
Why dev mode matters when building custom apps?
What do those containers and services actually
📈 My Real Progress (Even If It Doesn’t Look Like It)
It might look like I’ve achieved nothing in a month, but trust me, I’ve learned a lot of real stuff under the hood:
✅ Difference between production vs development setup
✅ How bench, migrate, fixtures, and app install works
✅ Understanding of:
Frappe folder structure
Logs, db console, and error handling
WebSocket and Nginx behavior
How companies hide or override unwanted ERPNext modules on the UI
Basically:
\> “I didn’t ship anything yet, but I became 10x more aware as a backend dev.”
🔜 What’s Next?
Now that I finally understand the differences, I’m going to:
✅ Set up a clean development environment (finally!)
✅ Build a real custom app from scratch using frappe_docker
✅ Document the process
✅ Create a YouTube playlist to help other beginners who feel lost like I did
🙌 Final Thoughts
This blog is Part 1 of my 3-part journey.
If you’re learning Frappe, stuck in Docker hell, or tired of job hunting and switching — I feel you.
This is the messy middle, and I’m not quitting.
Follow me for:
Part 2: First win(journey part 2), setup done working on project.
Part 3: Finally destination reached (Final Projects + Docs + Playlist + Reflections)
Until then, keep building, and don’t let a failed month stop your next big win 💪
Subscribe to my newsletter
Read articles from Marrinette 🐞 directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
