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:
For production installation i would like to use frappe_docker. 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 <project_name> up -d
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.
unfortunately the following error on my instance
root@32d40c9cfc97:/home/frappe/frappe-bench# install_app ebclocal https://gitee.com/xxxxx.git
Cloning into ‘EBCLocal’…
remote: Enumerating objects: 58, done.
remote: Counting objects: 100% (58/58), done.
remote: Compressing objects: 100% (50/50), done.
remote: Total 58 (delta 0), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (58/58), done.
ERROR: /home/frappe/frappe-bench/apps/ebclocal is not a valid editable requirement. It should either be a path to a local project or a VCS URL (beginning with svn+, git+, hg+, or bzr+).
WARNING: You are using pip version 20.1.1; however, version 20.2.4 is available.
You should consider upgrading via the ‘/home/frappe/frappe-bench/env/bin/python -m pip install --upgrade pip’ command.
root@32d40c9cfc97:/home/frappe/frappe-bench# echo -n “\nebclocal” >> sites/apps.txt
root@32d40c9cfc97:/home/frappe/frappe-bench# bench --site erpnext.xin install-app ebclocal
An error occurred while installing ebclocal:
No module named ‘\nebclocal’
Traceback (most recent call last):
File “/usr/local/bin/bench”, line 18, in
[sys.executable, bench_helper, ‘frappe’] + sys.argv[1:],
File “/opt/bitnami/python/lib/python3.7/subprocess.py”, line 363, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command ‘[’/home/frappe/frappe-bench/env/bin/python’, ‘/home/frappe/frappe-bench/apps/frappe/frappe/utils/bench_helper.py’, ‘frappe’, ‘–site’, ‘erpnext.xin’, ‘install-app’, ‘ebclocal’]’ returned non-zero exit status 1.
FROM frappe/erpnext-worker:edge
RUN install_app telebot https://github.com/yrestom/erpnext_telegram.git master
# Only add the branch if you are using a specific tag or branch.
Dockerfile …/telebot-nginx
FROM bitnami/node:12-prod
COPY build/telebot-nginx/install_app.sh /install_app
RUN /install_app telebot https://github.com/yrestom/erpnext_telegram.git master
FROM frappe/erpnext-nginx:edge
COPY --from=0 /home/frappe/frappe-bench/sites/ /var/www/html/
COPY --from=0 /rsync /rsync
RUN echo -n "\ntelebot" >> /var/www/html/apps.txt
VOLUME [ "/assets" ]
ENTRYPOINT ["/docker-entrypoint.sh"]
CMD ["nginx", "-g", "daemon off;"]