Share your development setup. Here is mine

Going through the posts in here, I see most of the posts in here is about problems with installations, and I’m not talking about deployment, I’m talking about people how wanna try to create their first app or play around with Frappe/Erpnext, or people who has problem with installation in there test or development machines. So I thought if share our development/testing setup so others can learn something or we even learn new tricks from each other.

I know each developer has his own quirks, and I have to admit my quirk is I don’t want a single development tool on my host machine and thats why I see VM as gift for humanity. so my setup on my Mac os is as follows:

1- I have Virtual box, I build my image from scratch or i just head to https://erpnext.com/download and download one of the images the awesome frappe team has prepared.
2- I set up networking for the image as bridge and assign it a static ip for the server.
3- I set up and connect the host to the VM image with SSH https://www.digitalocean.com/community/tutorials/how-to-set-up-ssh-keys–2
4- I install Fuse and SSHFS on my Mac, so I Can mount remote file systems over SSH https://www.digitalocean.com/community/tutorials/how-to-use-sshfs-to-mount-remote-file-systems-over-ssh

So now everything runs on the VM and all the VM folders shows in my system folders so you can use your favour editor. your host system stays clean and you have no worries about the virtual image you can just back it up before doing something major like update new version and if anything goes wrong you bring up new image in a minute.

now guys lets hear your setup for development/testing environment :slight_smile:

7 Likes

I use a MacBook Pro

  1. bench installed locally via brew
  2. iTerm2 with oh-my-zsh (2 tabs open for bench start and bench console, tabs for each app i am working on to run git commands)
  3. TextMate with pyflakes (default folder frappe-bench/apps)
  4. Chrome + FF for debugging
  5. I usually have 10-15 sites including a demo site (made using the demo) and a test site (to run tests) and keep rebuilding them
  6. DNS based multi-tenancy using /etc/hosts
  7. 2 benches - 1 for development, 1 for release
8 Likes

I am Using Ubuntu 14.04 LTS

  1. I manually installed all the reqd.( ex.Redis,MariaDB,etc) before installing bench
  2. Firefox (with Firebug) for debugging
    3 .Atom with Python Package installed
  3. I have 2 custom apps installed for my company.
4 Likes

Mine is nothing fancy.

For development:

  • I use both desktop and notebook with Ubuntu 14.04 LTS
  • Chrome and Firefox + Firebug
  • Manually installed all required services before installing bench, like what @hereabdulla did.
  • I use Syntastic plugin for Vim syntax checking

For testing:

  • I simply run a small server at Google Cloud platform.
3 Likes

Let’s see:

  • Windows PC (Don’t judge ok)
  • Ubuntu VM, which I used the script to install everything
  • Three separate benches with different code and sites (it gets crazy)
  • Networking is set as bridged, and I basically just do everything via SSH and SMB
  • Sublime Text 3 that accesses the folders which have code in
  • Chrome for debugging

Oh and did I mention I have three nice monitors? :sunglasses:
https://i.imgur.com/qkL0vFe.png

Amen

6 Likes

I use a Ubuntu 14.04

  • Bench installed locally via apt-get
  • Pycharm IDE
  • Chrome + FF for debugging
  • Use Google Platform for testing and production
  • Used Jenkin Continuous Integration
5 Likes

I use a MacBook Pro

  • Vagrant + Virtualbox for development
  • Qemu + TinyCore Linux + Salad to Local CI
  • Atom IDE
  • Chrome / Safari to debugging
  • pdb or Error Snapshot to better Debugging
4 Likes

I use an iMac:

  • Vagrant + Generated Vagrant Box from Official Dev Virtual Box Image.
  • Vagrant Box Mapped port 8000 to 8080 and shared Vagrant volume
  • ITerm2
  • VIM(Always available on any server I setup, no fuzz)
  • I use github with our apps so installing into fresh dev vms is quick.
  • Chrome/Firefox for debugging
  • Dockerized Jenkins Server on Linode
  • ERPNext Dev Jenkins Slave on Linode as well
4 Likes

Cloud everything:

  • 2gb ram Digitalocean droplet - 14.04 Ubuntu for production
  • 1gb ram Digitalocean droplet - 14.04 Ubuntu for development
  • SSH with free https://shiftedit.net account

Usually find me on a Windows 10 machine running Firefox

2 Likes

I am new to both erp and ErpNext and use Centos 7 VMM (not VirtualBox manager) to run ErpNext VM. Two setup notes that may help:

  1. To convert VirtualBox .ova to run on qemu-kvm
    [clarkej@tango ERP]$ tar xvf ERPNext-190416.ova
    ERPNext-190416.ovf
    ERPNext-190416-disk1.vmdk
    $ qemu-img convert -O qcow2 ERPNext-190416-disk1.vmdk ERPNext-190416.qcow2

inspect .ovf for machine config for eg. mem + cpu

  1. Bridged Network aka ‘shared physical device’ and not NAT-based virtual network default
    see adamw’s notes Bridged networking for libvirt with NetworkManager: 2014 / Fedora 21 | AdamW on Linux and more
1 Like

I am on an Ubuntu 16.04 machine - (could be a desktop or a server)

  1. I use LXD/LXC containers, and they work well for me
  2. I copy my tempate container (called Xenial) to a new instance - it already has webmin and a standard user setup, patches, ssh installed etc
    2a) I ssh to the container using the IP address, and do most things from the command line, but I also have webmin on there in case I need it for some admin things
  3. I run the easy setup script as per the Erpnext/frappe documentation - (I wasn’t able to get the development one to work - it gives me a message about too many hosts), so I use the production install, and it works for what I need to do - mostly testing. (I see there are instructions to convert the production to a dev environment, but I havn’t had to do that for what I need
  4. I have abridged instructions in Evernote, which I copy and paste from (I love that tool)
  5. I find LXD/LXC a lot easier than docker, and a lot faster than a VM, but maybe this is a topic for another discussion thread. Anyways, I can share those instructions if anyone wants them
  6. I download and restore the latest version of my database from the Erpnext SAAS site, which is alreasy populated with sample data, that I use for demos, testing etc.
1 Like

Hey all:

Using 16.04 LTS:

2 benches - 1 for development, 1 for production
Ubuntu VM - reached trough secure VPN + second one on local again with VM
Firefox (with Firebug) for debugging

Cheers

1 Like

Because I am a nut job,

I use Ubuntu desktop, dual boot with my windows 10 ofcourse, PHPStorm

1 Like

I am new to development of erpnext, i am using windows what is the best way to start of??

@Adeel_Rizvi: the easiest jump-start option for ERP Next development on a Windows machine is to use Virtual Box and an image with Development configuration of ERP Next (available to download at https://erpnext.com/download)

1 Like

hi,
I’ve been having trouble syncing the erpnext code to a local folder.
I’m new to erpnext and it seems that the install script saves everything in the home folder of the user?
are you using vagrant?

I use Debian8 for my first try and see a lot of issues during installation probably due to my very heavy python installation. The most puzzling stuffs are error messages. Sometimes they are just misleading… I install through the standard bench flow while not easy setup.
I use chrome to visit the demo site.
I don’t use other tools for now.

I’m wondering if any could suggest what would be the best way to deploy the server for someone like me who is not well-versed in programming but wanna deploy ERPNEXT for a small manufacturing business?

So far, the easiest way I found is to use VirtualBox running the VM created by ERPNEXT awesome team.

Will I face any scalability issues in the future if I use VM?

Hey @Ratanak !

If you can please make a new post, it will increase the chances of getting replies rather than this comment on 2 year old post.

@root13F
Thanks for your suggestion. I will do that.