ERPNext je bezplatný a open source ERP software napsaný v Pythonu nad rámec Frappe a zahrnuje účetnictví, inventář, výrobu, CRM, prodej, nákup, projektový management, HRMS a další. ERPNext je jednoduchý, výkonný a snadno použitelný ERP systém. Dodává se s krásným webovým rozhraním, které lze použít ke správě každodenních úkolů z centrálního místa.
V tomto tutoriálu se naučíme, jak nainstalovat software ERPNext na server Debian 9.
Předpoklady
- Server se systémem Debian 9.
- Uživatel bez oprávnění root s právy sudo.
Začínáme
Před spuštěním se doporučuje aktualizovat úložiště balíčků na nejnovější verzi. Můžete to provést spuštěním následujícího příkazu:
sudo apt-get update -y
sudo apt-get upgrade -y
Poté restartujte systém, aby se všechny změny projevily.
Instalační závislosti
ERPNext vyžaduje Python verze 2.7, aby správně fungoval. Python a další požadované balíčky můžete nainstalovat spuštěním následujícího příkazu:
sudo apt-get install python-minimal git build-essential python-setuptools python-dev libffi-dev libssl-dev curl -y
Budete také muset nainstalovat Pythonův nástroj pip pro instalaci závislostí Pythonu. Můžete to provést spuštěním následujícího příkazu:
wget https://bootstrap.pypa.io/get-pip.py
sudo python get-pip.py
Dále nainstalujte ansible pomocí příkazu pip:
sudo pip install ansible
Instalovat Node.js, Redis a Nginx
Ve výchozím nastavení není v Debianu 9 k dispozici nejnovější verze Node.js. Budete tedy muset přidat úložiště Nodesource pro Node.js 8.x. Můžete to provést spuštěním následujícího příkazu:
sudo curl --silent --location https://deb.nodesource.com/setup_8.x | sudo bash -
Dále nainstalujte Node.js, Nginx a Redis spuštěním následujícího příkazu:
sudo apt-get install nodejs redis-server nginx -y
Jakmile jsou všechny balíčky nainstalovány, spusťte službu Nginx a Redis a povolte jim spuštění při spouštění pomocí následujícího příkazu:
sudo systemctl start nginx
sudo systemctl enable nginx
sudo systemctl start redis-server
sudo systemctl enable redis-server
Instalace a konfigurace MariaDB
Ve výchozím nastavení není nejnovější verze MariaDB k dispozici v úložišti Debian 9. K tomu budete muset přidat úložiště MariaDB.
Nejprve si stáhněte a přidejte podpisový klíč do systému pomocí následujícího příkazu:
sudo apt-get install software-properties-common dirmngr
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xF1656F24C74CD1D8
Dále přidejte úložiště MariaDB pomocí následujícího příkazu:
sudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] http://ftp.utexas.edu/mariadb/repo/10.2/debian stretch main'
Nakonec nainstalujte server MariaDB pomocí následujícího příkazu:
sudo apt-get update -y
sudo apt-get install mariadb-server libmysqlclient-dev -y
Dále budete muset přidat úložiště Barracuda do konfiguračního souboru MariaDB pro vytváření databází ERPNext. Můžete to udělat úpravou souboru my.cnf:
sudo nano /etc/mysql/my.cnf
přidejte následující řádky:
[mysqld] innodb-file-format=barracuda innodb-file-per-table=1 innodb-large-prefix=1 character-set-client-handshake = FALSE character-set-server = utf8mb4 collation-server = utf8mb4_unicode_ci [mysql] default-character-set = utf8mb4
Po dokončení uložte a zavřete soubor, poté spusťte službu MariaDB a povolte její spuštění při spouštění pomocí následujícího příkazu:
sudo systemctl restart mysql
sudo systemctl enable mysql
Dále zabezpečte MariaDB spuštěním skriptu mysql_secure_installation:
sudo mysql_secure_installation
Tento skript nastaví heslo root, odstraní anonymní uživatele, zakáže vzdálené přihlášení root a odstraní testovací databázi a přístup k zabezpečené MariaDB, jak je uvedeno níže:
Set root password? [Y/n] y Remove anonymous users? [Y/n] y Disallow root login remotely? [Y/n] y Remove test database and access to it? [Y/n] y Reload privilege tables now? [Y/n] y
Instalovat PDF Converter
Budete také muset nainstalovat wkhtmltopdf pro převod HTML do PDF pomocí vykreslovacího jádra QT Webkit. Nejprve nainstalujte požadované závislosti pomocí následujícího příkazu:
sudo apt-get install libxext6 xfonts-75dpi xfonts-base libxrender1 -y
Dále si stáhněte nejnovější verzi wkhtmltopdf pomocí následujícího příkazu:
wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz
Dále rozbalte stažený soubor do adresáře /opt:
sudo tar -xvf wkhtmltox-0.12.4_linux-generic-amd64.tar.xz -C /opt
Dále vytvořte měkký odkaz pro wkhtmltopdf pomocí následujícího příkazu:
sudo ln -s /opt/wkhtmltox/bin/wkhtmltopdf /usr/bin/wkhtmltopdf
sudo ln -s /opt/wkhtmltox/bin/wkhtmltopdf /usr/bin/wkhtmltopdf
Install Bench
Dále budete muset nainstalovat Bench, abyste mohli nainstalovat a spravovat aplikaci ERPNext do vašeho systému. Bench se také používá k vytváření a správě konfigurací Nginx a supervizorů.
Před instalací Bench budete muset přidat uživatele pro Bench.
Nejprve vytvořte uživatele Bench pomocí následujícího příkazu:
sudo adduser bench
Dále poskytněte uživateli nástroje sudo oprávnění.
sudo usermod -aG sudo bench
Dále se přihlaste jako uživatel Bench a naklonujte úložiště Bench pomocí následujícího příkazu:
su - bench
git clone https://github.com/frappe/bench bench-repo
Nakonec nainstalujte Bench pomocí příkazu pip:
sudo pip install -e bench-repo
Instalovat ERPNext
Dále inicializujte adresář bench s nainstalovaným rámcem frappe.
bench init erpnext
Dále změňte adresář na erpnext a vytvořte nový web Frappe pomocí následujícího příkazu:
cd erpnext
bench new-site test.example.com
Výše uvedený příkaz vás požádá o zadání kořenového hesla MySQL a požádá vás o nastavení nového hesla pro účet správce. Heslo správce se bude muset později přihlásit do řídicího panelu správce.
Dále stáhněte instalační soubory ERPNext z úložiště Git pomocí následujícího příkazu:
bench get-app erpnext https://github.com/frappe/erpnext
Dále nainstalujte ERPNext na svůj nově vytvořený web.
bench --site test.example.com install-app erpnext
Nakonec spusťte aplikaci Bench pomocí následujícího příkazu:
bench start
Jakmile se aplikace úspěšně spustí, měli byste vidět následující výstup:
13:40:10 system | redis_socketio.1 started (pid=2618) 13:40:10 system | worker_long.1 started (pid=2625) 13:40:10 system | watch.1 started (pid=2619) 13:40:10 system | redis_queue.1 started (pid=2626) 13:40:10 redis_socketio.1 | 2630:M 24 Feb 13:40:10.939 * Increased maximum number of open files to 10032 (it was originally set to 1024). 13:40:10 system | web.1 started (pid=2629) 13:40:11 system | schedule.1 started (pid=2634) 13:40:10 redis_socketio.1 | _._ 13:40:10 redis_socketio.1 | _.-``__ ''-._ 13:40:10 redis_socketio.1 | _.-`` `. `_. ''-._ Redis 3.0.6 (00000000/0) 64 bit 13:40:10 redis_socketio.1 | .-`` .-```. ```\/ _.,_ ''-._ 13:40:10 redis_socketio.1 | ( ' , .-` | `, ) Running in standalone mode 13:40:10 redis_socketio.1 | |`-._`-...-` __...-.``-._|'` _.-'| Port: 12000 13:40:10 redis_socketio.1 | | `-._ `._ / _.-' | PID: 2630 13:40:10 redis_socketio.1 | `-._ `-._ `-./ _.-' _.-' 13:40:10 redis_socketio.1 | |`-._`-._ `-.__.-' _.-'_.-'| 13:40:10 redis_socketio.1 | | `-._`-._ _.-'_.-' | http://redis.io 13:40:10 redis_socketio.1 | `-._ `-._`-.__.-'_.-' _.-' 13:40:10 redis_socketio.1 | |`-._`-._ `-.__.-' _.-'_.-'| 13:40:10 redis_socketio.1 | | `-._`-._ _.-'_.-' | 13:40:10 redis_socketio.1 | `-._ `-._`-.__.-'_.-' _.-' 13:40:10 redis_socketio.1 | `-._ `-.__.-' _.-' 13:40:10 redis_socketio.1 | `-._ _.-' 13:40:10 redis_socketio.1 | `-.__.-' 13:40:10 redis_socketio.1 | 13:40:11 system | worker_default.1 started (pid=2639) 13:40:10 redis_socketio.1 | 2630:M 24 Feb 13:40:10.973 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128. 13:40:10 redis_socketio.1 | 2630:M 24 Feb 13:40:10.974 # Server started, Redis version 3.0.6 13:40:10 redis_socketio.1 | 2630:M 24 Feb 13:40:10.974 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect. 13:40:10 redis_socketio.1 | 2630:M 24 Feb 13:40:10.974 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled. 13:40:10 redis_queue.1 | 2635:M 24 Feb 13:40:10.976 * Increased maximum number of open files to 10032 (it was originally set to 1024). 13:40:10 redis_queue.1 | _._ 13:40:10 redis_queue.1 | _.-``__ ''-._ 13:40:10 redis_queue.1 | _.-`` `. `_. ''-._ Redis 3.0.6 (00000000/0) 64 bit 13:40:10 redis_queue.1 | .-`` .-```. ```\/ _.,_ ''-._ 13:40:10 redis_queue.1 | ( ' , .-` | `, ) Running in standalone mode 13:40:10 redis_queue.1 | |`-._`-...-` __...-.``-._|'` _.-'| Port: 11000 13:40:10 redis_queue.1 | | `-._ `._ / _.-' | PID: 2635 13:40:10 redis_queue.1 | `-._ `-._ `-./ _.-' _.-' 13:40:10 redis_queue.1 | |`-._`-._ `-.__.-' _.-'_.-'| 13:40:10 redis_queue.1 | | `-._`-._ _.-'_.-' | http://redis.io 13:40:10 redis_queue.1 | `-._ `-._`-.__.-'_.-' _.-' 13:40:10 redis_queue.1 | |`-._`-._ `-.__.-' _.-'_.-'| 13:40:10 redis_queue.1 | | `-._`-._ _.-'_.-' | 13:40:10 redis_queue.1 | `-._ `-._`-.__.-'_.-' _.-' 13:40:10 redis_queue.1 | `-._ `-.__.-' _.-' 13:40:10 redis_queue.1 | `-._ _.-' 13:40:10 redis_queue.1 | `-.__.-' 13:40:10 redis_queue.1 | 13:40:10 redis_queue.1 | 2635:M 24 Feb 13:40:10.998 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128. 13:40:10 redis_queue.1 | 2635:M 24 Feb 13:40:10.999 # Server started, Redis version 3.0.6 13:40:11 redis_queue.1 | 2635:M 24 Feb 13:40:11.000 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect. 13:40:11 redis_socketio.1 | 2630:M 24 Feb 13:40:11.000 * The server is now ready to accept connections on port 12000 13:40:11 system | socketio.1 started (pid=2637) 13:40:11 redis_queue.1 | 2635:M 24 Feb 13:40:11.029 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled. 13:40:11 redis_queue.1 | 2635:M 24 Feb 13:40:11.029 * The server is now ready to accept connections on port 11000 13:40:11 system | redis_cache.1 started (pid=2652) 13:40:11 system | worker_short.1 started (pid=2651) 13:40:11 redis_cache.1 | 2660:M 24 Feb 13:40:11.100 * Increased maximum number of open files to 10032 (it was originally set to 1024). 13:40:11 redis_cache.1 | _._ 13:40:11 redis_cache.1 | _.-``__ ''-._ 13:40:11 redis_cache.1 | _.-`` `. `_. ''-._ Redis 3.0.6 (00000000/0) 64 bit 13:40:11 redis_cache.1 | .-`` .-```. ```\/ _.,_ ''-._ 13:40:11 redis_cache.1 | ( ' , .-` | `, ) Running in standalone mode 13:40:11 redis_cache.1 | |`-._`-...-` __...-.``-._|'` _.-'| Port: 13000 13:40:11 redis_cache.1 | | `-._ `._ / _.-' | PID: 2660 13:40:11 redis_cache.1 | `-._ `-._ `-./ _.-' _.-' 13:40:11 redis_cache.1 | |`-._`-._ `-.__.-' _.-'_.-'| 13:40:11 redis_cache.1 | | `-._`-._ _.-'_.-' | http://redis.io 13:40:11 redis_cache.1 | `-._ `-._`-.__.-'_.-' _.-' 13:40:11 redis_cache.1 | |`-._`-._ `-.__.-' _.-'_.-'| 13:40:11 redis_cache.1 | | `-._`-._ _.-'_.-' | 13:40:11 redis_cache.1 | `-._ `-._`-.__.-'_.-' _.-' 13:40:11 redis_cache.1 | `-._ `-.__.-' _.-' 13:40:11 redis_cache.1 | `-._ _.-' 13:40:11 redis_cache.1 | `-.__.-' 13:40:11 redis_cache.1 | 13:40:11 redis_cache.1 | 2660:M 24 Feb 13:40:11.115 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128. 13:40:11 redis_cache.1 | 2660:M 24 Feb 13:40:11.115 # Server started, Redis version 3.0.6 13:40:11 redis_cache.1 | 2660:M 24 Feb 13:40:11.115 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect. 13:40:11 redis_cache.1 | 2660:M 24 Feb 13:40:11.116 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled. 13:40:11 redis_cache.1 | 2660:M 24 Feb 13:40:11.116 * The server is now ready to accept connections on port 13000 13:40:16 socketio.1 | listening on *: 9000 13:40:34 worker_long.1 | 13:40:34 RQ worker u'rq:worker:Node1.2632.long' started, version 0.10.0 13:40:34 worker_long.1 | 13:40:34 *** Listening on long... 13:40:34 worker_long.1 | 13:40:34 Cleaning registries for queue: long 13:40:34 worker_default.1 | 13:40:34 RQ worker u'rq:worker:Node1.2646.default' started, version 0.10.0 13:40:34 worker_default.1 | 13:40:34 *** Listening on default... 13:40:34 worker_default.1 | 13:40:34 Cleaning registries for queue: default 13:40:34 worker_short.1 | 13:40:34 RQ worker u'rq:worker:Node1.2661.short' started, version 0.10.0 13:40:34 worker_short.1 | 13:40:34 *** Listening on short... 13:40:34 worker_short.1 | 13:40:34 Cleaning registries for queue: short 13:40:34 web.1 | * Running on http://0.0.0.0:8000/ (Press CTRL+C to quit)
Přístup k webovému rozhraní ERPNext
ERPNext je nyní nainstalován a běží na portu 8000 . Je čas vstoupit do webového rozhraní ERPNext.
Otevřete webový prohlížeč a zadejte adresu URL http://test.exaple.com:8000 , budete přesměrováni na následující stránku:
Zde zadejte přihlašovací údaje k účtu správce a klikněte na Přihlásit se měli byste vidět následující stránku:
Zde vyberte anglický jazyk a klikněte na Další měli byste vidět následující stránku:
Zde vyberte svou zemi, časové pásmo a měnu a poté klikněte na Další měli byste vidět následující stránku:
Zde zadejte své jméno, e-mail a heslo a poté klikněte na Další měli byste vidět následující stránku:
Zde vyberte svou doménu, jak si přejete, a poté klikněte na Další měli byste vidět následující stránku:
Zde zadejte název a zkratku své společnosti a poté klikněte na Další měli byste vidět následující stránku:
Zde zadejte podrobnosti o vaší organizaci a klikněte na Dokončit nastavení měli byste vidět následující stránku:
Zde nastavte cíl, kterého chcete pro svou společnost dosáhnout, a poté klikněte na Vytvořit měli byste vidět následující stránku:
Zde klikněte na Další Chcete-li pokračovat, měli byste vidět následující stránku:
Zde přidejte zákazníky, které chcete přidat, a poté klikněte na Vytvořit měli byste vidět následující stránku:
Zde klikněte na Další Chcete-li pokračovat, měli byste vidět následující stránku:
Zde přidejte své dodavatele, které chcete přidat, a poté klikněte na Vytvořit měli byste vidět následující stránku:
Zde klikněte na Další Chcete-li pokračovat, měli byste vidět následující stránku:
Zde přidejte své produkty a služby, které chcete koupit nebo prodat, a poté klikněte na Vytvořit měli byste vidět následující stránku:
Zde klikněte na Další Chcete-li pokračovat, měli byste vidět následující stránku:
Zde přidejte uživatele do své organizace a poté klikněte na Vytvořit tlačítko, měli byste vidět řídicí panel ERPNext na následující stránce:
Závěr
Blahopřejeme! úspěšně jste nainstalovali a nakonfigurovali ERPNext na serveru Debian 9. Aplikaci nyní můžete snadno používat ke správě vaší společnosti. Další informace naleznete na oficiální stránce dokumentace ERPNext na Doc.