How can I add hrms in erpnext 14 in docker
As I am trying to find out the best practice for this myself, I will share what I have found out so far.
I believe the correct way to do it is to create a custom docker image which includes HRMS.
That said, I haven’t done that yet, but tried to install manually.
One caveat is, that the app’s source is being installed in ~/frappe_bench/apps and this directory is part of the image and not persisted via docker volumes. Therefore the HRMS source needs to be installed in the custom docker image.
Just to get a hang of it and see how it works, I defined a docker volume for frappe-bench:/home/frappe/frappe-bench and ran the following commands from the backend image (docker container exec -it frappe_docker-backend-1 /bin/bash):
bench get-app hrms --branch version-14
bench --site frontend install-app hrms
After restarting all containers, HRMS was installed and working.
Note: This is NOT recommended at all.
The problem with this is maintenance, as it is using an overlay filesystem. Including the corresponding HRMS source to the updated erpnext docker image is crucial in order for all containers to have access to the same code and keep everything in sync.
Custom image documentation:
That document you quoted is the correct method. Since HRMS has been spun off into it’s own app in v14, you need to include the app in the image at time of creation. This is also true of other apps like payments, education, etc.
can someone explain how to do sa step by step
use the following commands:
bench get-app hrms --branch version-14
bench --site frontend install-app hrms
bench --site frontend migrate