I have been stuck on this for quite some time now. The documentation at https://github.com/frappe/frappe_docker/blob/main/docs/custom-apps-for-production.md does not provide a working solution, and the commonly posted solution from Revant refers to a build of ERPNext that was not made with the official documentation and does not contain the same file structure. The official documentation and repo has a build directory with multiple sub-directories for each different nginx and worker image whereas his example has a single dockerfile for all workers and one for all nginx, making it seemingly incompatible.
Has anyone successfully installed a custom app onto a running deployment of erpnext on docker using the official documentation (docker-compose and all)? I would greatly appreciate a how-to or diffs.
@revant_one So for now should I just avoid attempting to install an app with the current development version? We really wanted to be able to get the wiki app set up, I assume with the changes coming that it would need to be reinstalled and resetup anyway? Will we be able to use our existing mariadb images and keep everything that has been created on the site so far?? Losing everything to an upgrade isn’t much of an option for us
@revant_one How would you go about implementing the diffs shown in that repo on the official build, as worker/Dockerfile and nginx/Dockerfile dont exist and are rather split into separate dockerfiles in a Build directory? Or is there a way I can freshly install that repo but have it still use all the data and images from the previous?
official repo has files to build frappe and ERPNext images. It doesn’t have Dockerfiles to build custom apps.
custom apps need to base the images on either frappe or ERPNext images.
if you check the readme of the custom_frappe_docker repo you’ll find steps to build image. I don’t think you wish to use my repo as it is not “official”.
I don’t think that person has answered any Frappe docker custom app related questions. Hope the person is doing great.
In fact whatever is happening on frappe_docker and frappe/helm is contributed by community.
So either use custom_frappe_docker and ask me questions for free forever (community work within my limits) or use official docs which you may need to update with PR as you find out fixes.
@revant_one Alright, so the question would rather be then, is there a way to migrate my existing database and configurations from a build using the official repo to one using yours? custom_frappe_docker is a lot more painless and I was able to get it going locally very smoothly, I just can’t seem to get it to use the existing images
Custom Images that i build are based on frappe_docker.
the worker image is used to base my worker.
in case of nginx image, we need nodejs to build custom apps it. Even after that, at the end it is based on official image again
after you build the images using the custom_frappe_docker, just replace the image names in your existing docker-compose.yml
other thing that causes confusion is, apps.txt needs to have all the custom apps available in image. This becomes out of sync as apps.txt file is kept in sites volume. Make sure you execute ls -1 ../apps > apps.txt from erpnext-python container to make the apps available.
if you build new images and use them that’ll be migrating from old to new images.
as long as sites volume has same files and db has same data, things should pick up from old environment. All my environments were migrated like this.
As people find improvements they contribute. It is unpredictable.
Stay on the tagged version to avoid accidental upgrades.
for me containers removed certain level of unreliability.
let me clarify again, I’m just another community member, I love to self-host, I hack and self host many other things. So I’m not at fault, if things are unreliable!