Install ERPNext on DigitalOcean Centos 7

For followers of this saga, I started trying to install ERPNext on bare-metal FreeBSD, but ran into errors. No solution yet, so changing course slightly. I signed up for a server on DigitalOcean. It’s a pretty good deal, for $5 a month for one CPU, 512MB RAM and a 20 GB SSD. It’s basically the same as the old desktop serving dalescott.net, or the performance of a vm running in VirtualBox under Windows on my T61 ThinkPad. I also had a $10 promo code; I still had to put in $5 of my own, but I should get 3 months for $5, pretty good. I had to pick CentOS 7 instead of FreeBSD 10 (ERPNext and DigitalOcean constraints, and chosing RH for corporate familiarity), oh well….

Here are my steps, described very briefly:

  • copy my public ssh key to my DigitalOcean account (copy/paste from the PuTTYgen window, NOT the Save Public Key button!)
  • create droplet: 512 MB / 1 CPU, 20 GB SSD, 1000 GB Transfer, New York server, CentOS 7.0 x64, and use my ssh key.
  • connect to the new server using PuTTY on my Windows laptop
    • I was emailed a password, but it doesn’t seem to work, I muddled around a bit and destroyed my first droplet, so perhaps the password is for that droplet – if the second droplet got the same IP address as the destroyed one)
  • follow Easy Way in ERPNExt frappe bench README.md
    • wkhtmltopdf couldn’t be installed and was skipped (too bad, I need that!)
    • “pip-2.7 not found”, but reading setup_frappe.sh, this seems informational and not an issue
  • point browser at the server ip address
    • server produced ERPNext login screen, so it seems the basics are working.
  • install wkhtmltopdf manually (appears the project has changed its hosting recently)
    • got a LOT of “unable to allocate memory” error messages, but wkhtmltopdf seems OK (created test page, assuming errors are due to not being able to load some user thumbnail pics)
  • Access the server from a browser (port 80), and sign into ERPNext as “Adminstrator” using the password output at the end of the setup_frappe.sh execution.
  • Backup the database after completing the setup wizard.

setup_frappe.sh log

[root@firefly ~]# wget https://raw.githubusercontent.com/frappe/bench/master/install_scripts/setup_frappe.sh
--2014-11-14 22:57:47-- https://raw.githubusercontent.com/frappe/bench/master/install_scripts/setup_frappe.sh
Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 199.27.76.133
Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|199.27.76.133|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 11601 (11K) [text/plain]
Saving to: ‘setup_frappe.sh’

100%[============================================================>] 11,601 --.-K/s in 0s

2014-11-14 22:57:47 (37.0 MB/s) - ‘setup_frappe.sh’ saved [11601/11601]

[root@firefly ~]# sudo bash setup_frappe.sh --setup-production
Installing for centos 7 amd64 In case you encounter an error, you can post on https://discuss.frappe.io

Adding centos mariadb repo
Installing packages for centos. This might take time...
Installing wkhtmltopdf
Cannot install wkhtmltodpdf. Skipping...
Configuring CentOS services
Starting services
Adding frappe user
setup_frappe.sh: line 300: hash: pip-2.7: not found
Installing frappe-bench Setting up first site

Frappe/ERPNext is installed successfully and is running on port 80.
Frappe password: xxxxxxxxxxxxxxxx
MariaDB root password: xxxxxxxxxxxxxxxx
Administrator password: xxxxxxxxxxxxxxxx

The passwords are also stored at ~/frappe_passwords.txt
You can remove this file after making a note of the passwords. 
[root@firefly ~]#

install wkhtmltopdf

[root@firefly ~]# wget http://downloads.sourceforge.net/project/wkhtmltopdf/0.12.1/wkhtmltox-0.12.1_linux-centos7-amd64.rpm
--2014-11-14 23:30:03--  http://downloads.sourceforge.net/project/wkhtmltopdf/0.12.1/wkhtmltox-0.12.1_linux-centos7-amd64.rpm
Resolving downloads.sourceforge.net (downloads.sourceforge.net)... 216.34.181.59
Connecting to downloads.sourceforge.net (downloads.sourceforge.net)|216.34.181.59|:80... connected.
HTTP request sent, awaiting response... 302 Found
Location: http://softlayer-dal.dl.sourceforge.net/project/wkhtmltopdf/0.12.1/wkhtmltox-0.12.1_linux-centos7-amd64.rpm [following]
--2014-11-14 23:30:03--  http://softlayer-dal.dl.sourceforge.net/project/wkhtmltopdf/0.12.1/wkhtmltox-0.12.1_linux-centos7-amd64.rpm
Resolving softlayer-dal.dl.sourceforge.net (softlayer-dal.dl.sourceforge.net)... 67.228.157.232
Connecting to softlayer-dal.dl.sourceforge.net (softlayer-dal.dl.sourceforge.net)|67.228.157.232|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 14258268 (14M) [application/octet-stream]
Saving to: ‘wkhtmltox-0.12.1_linux-centos7-amd64.rpm’

100%[=============================================================================================================>] 14,258,268  5.16MB/s   in 2.6s

2014-11-14 23:30:06 (5.16 MB/s) - ‘wkhtmltox-0.12.1_linux-centos7-amd64.rpm’ saved [14258268/14258268]

[root@firefly ~]#
[root@firefly ~]# rpm -ivh wkhtmltox-0.12.1_linux-centos7-amd64.rpm
Preparing...                          ################################# [100%]
Updating / installing...
   1:wkhtmltox-1:0.12.1-1             ################################# [100%]
[root@firefly ~]# yum install fontconfig libXrender libXext '*fonts*' openssl
...
  Lots and LOTS of fonts appear to be installed, but at the end there are a LOT of "[Errno 5] [Errno 12] Cannot allocate memory"
[root@firefly ~]# wkhtmltopdf --version
wkhtmltopdf 0.12.1 (with patched qt)
[root@firefly ~]# wkhtmltopdf http://www.tecmint.com/install-eclipse-classic-in-rhel-centos-fedora/ ./install-eclipse.pdf
Loading pages (1/6)
Warning: A finished ResourceObject received a loading finished signal. This migth be an indication of an iframe taking to long to load.
Warning: A finished ResourceObject received a loading progress signal. This migth be an indication of an iframe taking to long to load.
Counting pages (2/6)
Resolving links (4/6)
Loading headers and footers (5/6)
Printing pages (6/6)
Done
Exit with code 1 due to network error: UnknownNetworkError
[root@firefly ~]#

Backup database

systemctl status mariadb.service
mysqldump -u root -p --databases site1.local > ~/erpnextbkup/erpnext-1.sql

Restore database

mysql -u root -p site1.local < ~/erpnextbkup/erpnext-1.sql

3 thoughts on “Install ERPNext on DigitalOcean Centos 7

Leave a Reply

Your email address will not be published. Required fields are marked *