ERPNext - cost-effective ERP solution
-
To be honest I started packaging the most voted apps and ERPNext happened to be one of them. Also it saves me from installing 99 other apps now.
The good things about this package are:
-
I don’t need to update it anymore; I can simply update the entire system without reinstalling this package
-
I’m still working to bring multi-domain to it. For now dns based multi-tenancy is showing some issues but I will fix it soon
-
If everything goes south, I can create a backup and move it to another ErpNext installation without an issue
-
Cloudron totally takes care of backup and restore and I have already tested it
The bad things are:
-
There are two processes running (mariadb and supervisor) and cloudron will only restart the container if supervisor goes out; but maybe I’ll add a mechanism to restart mariadb myself
-
the backup size will be >1GB but if I’m using incremental backup this isn’t a big issue
-
this app is not in the app store; but I’m going to keep the package maintained, because managing an instance of Erpnext on another VPS is going to be harder than maintaining it on Cloudron because I don’t have to care about ssl, redis, backups, ldap, etc.
So, guys, I’ll leave it here. Will let you know when an update is out.
-
-
@subven said in ERPNext - cost-effective ERP solution:
maybe at some point the app store will open up to list community maintained packages.
Sounds like that is in the pipeline:
@girish said in What's coming in 7.4:
Community repo (appstore)
-
@nj said in ERPNext - cost-effective ERP solution:
Cloudron totally takes care of backup and restore and I have already tested it
Not really, cloudron takes a snapshot of /app/data, and your database I guess don't create a dump before that happened.
That's not really stable as a solution.If you could like get a dump every x time, that could be a solution, even if not perfect
-
@MooCloud_Matt you don’t need to take a database dump because the entire mariadb database lies inside the /app/data folder.
-
@nj
that is correct if you have ZFS or BTRFS, that can do a snapshot instantaneity.
But cloudron uses a simple compression or rsync, which means that from when it starts and when it stops it takes time and in that time, data could be changed and the relationship could come out corrupted.postgress in their documentation, for example, suggests that if you want to use an fs snapshot you should stop the DB.
-
@LoudLemur you are right in that case. I didn’t worry because my backup schedule is at 3:00AM when nobody really used the app. If you expect people to write to the database during backup that’s an issue for sure.
Fortunately, ErpNext has a solution for that. We can put the app in maintenance mode for a while, and as I have already setup this ErpNext package to allow database read operations during maintenance, only writes will fail, which means websites etc will still be working fine.
Unfortunately, Cloudron doesn’t have a scheduler or cron system that can trigger a script before starting to backup and another script after backup success / failure. If @girish added a cron format like @prebackup @postbackup and @onbackupfail or simply added those options to the scheduler manifest, it would be perfect.
Either we could put the app in maintenance mode right before backup and put the site back on afterwards . I could even run mariadb inside /run/mariadb instead of /app/data ; I would only create database backup at /app/data/mariadb-dump-datetime.sql right before backup and delete it when backup task completes.
Also I’d like to see/know how the database addon handles backups and restoration.
-
@nj said in ERPNext - cost-effective ERP solution:
Unfortunately, Cloudron doesn’t have a scheduler or cron system that can trigger a script before starting to backup and another script after backup success / failure. If @girish added a cron format like @prebackup @postbackup and @onbackupfail or simply added those options to the scheduler manifest, it would be perfect.
File a feature request for this to get it in their queue.
-
@nj Thanks for packaging ERPNext. Its potential is vast.
Trying out different features of it I notice that there seem to be several modules missing when compared to the ERPNext docs.
For example Automation is missing. (Though I can reach and use event producers by searching for it, or reaching
/app/event-producer
directly)Perhaps that's all in order if your app is packing the core app only?
-
@yusf I have setup frappe to install ErpNext only. If Automation is an app, you can add any apps you like. Instructions on Github. I also installed other apps after installing this package on my cloudron. Or maybe Automation module is hidden by default and you can show it from Settings, I don’t know.
-
I spent several days to make ErpNext work with Cloudron MySQL or Postgres. Unfortunately, postgres support is still a work in progress in ErpNext upstream and the project uses some features like
CREATE SEQUENCE
that are only available in MySQL, not in MariaDB. That's why the current version of this package is the most stable one.My suggestion to @staff if you can, please add the MariaDB addon alongside the MySQL addon. It should be extremely easy to add because of the similarity with MySQL. There are so many open source software that use MariaDB, and will sooner or later be incompatible with MySQL.
-
-
-
-
@girish said in ERPNext - cost-effective ERP solution:
TBH, I don't think we will be able to support this sort of selfhosting complexity.
Cloudron does brilliantly at hosting Nextcloud, which I think is a somewhat similar, complex application. What is it about Nextcloud which makes it possible where ERPnext is too tricky?
-
@LoudLemur you can see this post by @nj who already spent 100+ hours on this. The app also (when previously investigated) required database admin credentials and had restrictions on how username/password is created etc. All this makes it basically unviable for selfhosting imo, in general. I am sure it can be made to run with Cloudron with a lot of effort , but it's not worth it (for us).
-
-