2024年11月21日

HYEOS

随事而为

frappe_docker production 安装app方法

2 min read

i’ve spend the last few weeks customizing ERPNext to our needs. Alle customizations are put into a seperate app. After testing everything i now want to setup a production installation with docker. For testing installations i used pipechs docker images which worked flawlesly. Installing the app in development mode where done with:

bench get-app 
bench install-app 

For production installation i would like to use frappe_docker 6. I got v12 setup without any big issues, but i don’t get it how to add a custom app via docker-compose/dockerfiles. I followed the Custom apps description found in the git-Repository creating the directories and dockerfiles. Also confuring the shell scripts etc. But i always end with the same issue, that the setup fails when it tries to install the app, as it is always missing. It seems it is not picking up the created files.

For setup i call:
docker-compose --project-name up -d

Manually adding file doesn’t work either:

docker-compose --project-name "" --project-directory . up -d \
        -f installation/docker-compose-frappe.yml \
        -f installation/docker-compose-erpnext.yml \
        -f installation/docker-compose-.yml \
        -f installation/docker-compose-common.yml

The only way i found getting the app installed, is by shelling into the erpnext-python container and manually installing the app by calling:

install_app  
echo  "\n" >> sites/apps.txt
bench --site  install-app 

But i don’t know how to add those calls to the existing setup-pipeline. Running those steps manually doesn’t seem to be a good idea for production installs.

Would be cool if someone can shed some light on how to do setup correctly.

Regards

Kevin


在https://gitee.com/yuzelin/erpnext_chinese文档提供的中文汉化安装方法在production不可行,由此找到上篇文章执行正确的方法(如下):
install_app erpnext_chinese  https://gitee.com/yuzelin/erpnext_chinese
echo -n "erpnext_chinese" >>sites/apps.txt
bench --site install-app erpnext_chinese
bench --site migrate
更新及重新编译那里过不去,直接重启所有容器后重新登录网站好像也可以