- This repo is based on official frappe_docker documentation to build custom apps.
- Fork this repo to build your own image with ERPNext and list of custom Frappe apps.
- Change the
frappeanderpnextversions inbase_versions.jsonto use them as base. These values correspond to tags and branch names on the github frappe and erpnext repo. e.g.version-14,v14.18.1 - Change
ci/clone-apps.shscript to clone your private and public apps. Read comments in the file to update it as per need. This repo will install following apps: - Change
images/backend.Dockerfileto copy and install required apps withinstall-app. - Change
images/frontend.Dockerfileto install ERPNext if required. - Change
docker-bake.hclfor builds as per need. - Workflows from
.github/workflowswill build latest or tagged images using GitHub. Change as per need. - Runner will build images automatically and publish to container registry.
- Use
gitlab-ci.ymlin case of Gitlab CI.
Execute from root of app repo
Clone,
./ci/clone-apps.shSet environment variables,
FRAPPE_VERSIONset to use frappe version during building images. Default isversion-14.ERPNEXT_VERSIONset to use erpnext version during building images. Default isversion-14.VERSIONset the tag version. Default islatest.REGISTRY_NAMEset the registry name. Default iscustom_app.BACKEND_IMAGE_NAMEset worker image name. Default iscustom_worker.FRONTEND_IMAGE_NAMEset nginx image name. Default iscustom_nginx.
Build,
docker buildx bake -f docker-bake.hcl --loadNote:
- Use
docker buildx bake --loadto load images for usage with docker. - Use
docker buildx bake --pushto push images to registry. - Use
docker buildx bake --helpfor more information. - Change version in
version.txtto build tagged images from the changed version.
Refer development directory to start development
Refer docs directory to use Kubernetes Bench Operator