Official Docker for frappe

I just checked the mariadb container and noticed it exited almost immediately after I started it! Could this be the source of the issue? If so, how do I resolve this?

Thanks

It is, you should use docker logs mariadb to see what wrong with that container.

Have you check out my erpnext docker repo GitHub - pipech/erpnext-docker-debian: Self-contained ERPNext Docker Image base on Debian
I made a detailed instruction on erpnext docker there. :grinning:

Hi @pipech

ERROR: mysqld failed while attempting to check config
command was: "mysqld --verbose --help --log-bin-index=/tmp/tmp.SBDsIsR0Zi"

2018-07-18 23:53:44 0 [Note] Plugin 'FEEDBACK' is disabled.
2018-07-18 23:53:44 0 [Warning] Could not open mysql.plugin table. Some options may be missing from the help text
2018-07-18 23:53:44 0 [ERROR] mysqld: unknown variable 'innodb-file-format=barracuda'
2018-07-18 23:53:44 0 [ERROR] Aborting

ERROR: mysqld failed while attempting to check config
command was: "mysqld --verbose --help --log-bin-index=/tmp/tmp.E0AYMrtOgx"

2018-07-19  7:09:46 0 [Note] Plugin 'FEEDBACK' is disabled.
2018-07-19  7:09:46 0 [Warning] Could not open mysql.plugin table. Some options may be missing from the help text
2018-07-19  7:09:46 0 [ERROR] mysqld: unknown variable 'innodb-file-format=barracuda'
2018-07-19  7:09:46 0 [ERROR] Aborting

ERROR: mysqld failed while attempting to check config
command was: "mysqld --verbose --help --log-bin-index=/tmp/tmp.iaLpn4K4V6"

2018-07-19  8:00:54 0 [Note] Plugin 'FEEDBACK' is disabled.
2018-07-19  8:00:54 0 [Warning] Could not open mysql.plugin table. Some options may be missing from the help text
2018-07-19  8:00:54 0 [ERROR] mysqld: unknown variable 'innodb-file-format=barracuda'
2018-07-19  8:00:54 0 [ERROR] Aborting

Kind regards,

Hi @pipech

I’ve browsed through your documentation but didn’t find any section relating to the above issue. I would really appreciate any pointers or suggestions you can give to resolve this

Thanks

I guess docker compose pull mariadb version 10.3 which is not compatible with config using on frappe_docker repo. Solution is specify mariadb version 10.2 on docker-compose.yml and start new maria db container.

https://github.com/frappe/frappe_docker/issues/40#issuecomment-403965796

Hi @pipech

Thanks a lot for your guidance. I got around it by following the advice of @dominik in this post Important MariaDB Version 10.3 Action Required before Update

Now I’ve been able to get the site up using bench start

The big question now is ‘How do I get this to work in production’? I noticed you have detailed steps on your site but it’s for Debian. My server is Centos and I’ve installed using the steps in the Hitchhiker’s guide which unfortunately doesn’t list out steps for production!

Where do I go from here? Is there any way to get the steps in your documentation to work in my scenario?

Thanks a great deal for all your kind assistance

Do you specifically want to run ERPNext base on Centos image, or your server is Centos.
If it is the latter, you could use my setup.

You could simply try by stop all running container then run
docker pull pipech/erpnext-docker-debian:stable
docker run -d -p 8000-8005:8000-8005 -p 9000-9005:9000-9005 -p 3306-3307:3306-3307 pipech/erpnext-docker-debian:stable
Then wait a few second and try http://localhost:8000

If it works, then you can try production setup.

What I meant by naming erpnext-docker-debain is it is ERPNext image base on debian image, but it can run on any os that have docker.

1 Like

Hi @pipech

Thanks a lot for the clarification. I will try it and let you know how it goes. Much appreciated

Kind regards,

Hi @pipech

Trust you’re doing well. I’m following your guide for installing ERPNext in production and I’ve gotten to the point of running init.sh but it’s been updating DocTypes for Frappe for almost an hour now! Should it take this long?

frappe@ebecdfxxxxxx:~/bench$ cd .. && cd production_config && . init.sh
++ benchWD=/home/frappe/bench
++ cd /home/frappe/bench
++ sudo chown -R frappe:frappe sites/apps.txt sites/assets sites/common_site_config.json sites/currentsite.txt sites/site1.local
++ sudo chown -R frappe:frappe logs/bench.log logs/frappe.log logs/node-socketio.error.log logs/node-socketio.log logs/schedule.error.log logs/schedule.log logs/web.error.log logs/web.log logs/worker.error.log logs/worker.log
++ cd sites
++ rm -rf site1.local
++ cd ..
++ bench set-mariadb-host mariadb
++ bench new-site mynewsite.org

Installing frappe...
Updating DocTypes for frappe        : [========================================]

Please advise

Thanks

Update:

The session eventually got disconnected. I reconnected and tried running init.sh again but got an error saying that “database already exists”

Should I assume that the process actually completed successfully? Is there any way to confirm or do I just proceed with the remaining steps?

Thanks

I decided to complete the remaining steps and see if it works

The output of docker service ls shows that all 6 services are running but docker logs <frappe container id> returns the error below:

Error: No such container:

I find this quite strange since the container is actually running

Please advise

Thanks

Hi,

I don’t think it’ll works, because production setup need your domain name point to server ip address.

You’ll need start new setup with your domain name.

The problem with Updating DocTypes for Frappe, make sure you server has at least 2 gm of ram if it already is you could try using older erpnext-docker-debian image.

If you have further question or error you should post it on github issue page Issues · pipech/erpnext-docker-debian · GitHub

Best regards :smiley:

Thanks a lot @pipech

Will continue discussion on the Github issue page as advised

Cheers

I followed following steps and looked like all the process went well, but the http://localhost:8000/ gives “Site can’t be reached”;

git clone --depth 1 GitHub - frappe/frappe_docker: Docker images for production and development setups of the Frappe framework and ERPNext
cd frappe_docker
docker-compose up -d
./dbench init

Any hint on what I am missing?

  1. First time setup
    ./dbench init

  2. Command to start all the containers
    docker-compose start

  3. Command to be executed everytime after starting your containers
    ./dbench -s

  4. Command to enter your container
    docker exec -it frappe bash

  5. All bench commands can also be directly run from the host machine by using dbench. For instance bench start can be executed by running ./dbench -c start. Just preface the option with ./dbench -c. For more information on dbench run the command ./dbench -h.

Init create the site and setup an erpnext env.
You need to run the server with ./dbench -c start to get localhost:8000 active.
Don’t forget the ./dbench -s to setup docker image

Hello all,
I try to install but I have this issue

frappe@6c4d4506a689:~$ bench init frappe-bench --ignore-exist --skip-redis-config-generation
INFO:bench.utils:virtualenv -q env -p /usr/bin/python
Already using interpreter /usr/bin/python
Traceback (most recent call last):
File “/usr/local/bin/virtualenv”, line 11, in
sys.exit(main())
File “/usr/local/lib/python2.7/dist-packages/virtualenv.py”, line 712, in main
symlink=options.symlink)
File “/usr/local/lib/python2.7/dist-packages/virtualenv.py”, line 927, in create_environment
site_packages=site_packages, clear=clear, symlink=symlink))
File “/usr/local/lib/python2.7/dist-packages/virtualenv.py”, line 1389, in install_python
os.symlink(py_executable_base, full_pth)
OSError: [Errno 30] Read-only file system

Do you have an idea where is the issue ?

THhs is your issue. Google search this and you should find solutions

  1. if that is the case the README is missing these steps. I’ll add them and send a PR would that be
  • ./dbench -s
  • ./dbench -c start
  • ./dbench -s
  1. it seems the develop branch of erpnext is installed. Is that on purpose in order to get a development installation installation running or can u set some option somewhere to install a production ready ERPNext?

I guess it would be the bench get-app in line 25 of the dbench script which needs some option in order to clone from the master branch?

yes, I know how to use Google … There are many solutions, but what about THE solution ? The command “os.symlink (py_executable_base, full_pth)” causes the error … What the installator do at this time ? and where ? If I understand this I understand who is ReadOnly …

it seems to be a user permission issue. Check if your user frappe has all the read, write create etc. permissions in the folder you are trying to do bench init

1 Like