CentPN 7 Üzerinde ERPNext Açık Kaynak ERP Kurulumu

ERP veya Kurumsal Kaynak Planlaması, temel iş süreçlerini yönetmek için kullanılan bir kurumsal uygulama paketidir. ERPNext, Python ile yazılmış ücretsiz ve açık kaynaklı, kendi kendine barındırılan bir ERP uygulamasıdır. Ön uç için Node.js ve verilerini depolamak için MariaDB kullanır. ERPNext işletmelerin günlük görevleri yönetmesine olanak tanıyan kullanımı kolay bir web arayüzü sağlar. Muhasebe, CRM, HRM, üretim, POS, proje yönetimi, satın alma, satış yönetimi, depo yönetimi ve daha fazlası için modüller içerir. ERPNext, servis sağlayıcılar, imalat, perakende ve okullar gibi farklı endüstrileri yönetmek için kullanılabilir.

Bu derste, ERPNext'i CentOS 7'ye kuracağız.

Ön şartlar

Bu öğretici erp.example.comiçin, sunucuya işaret eden etki alanı adı olarak kullanacağız . Lütfen tüm oluşumlarını erp.example.comgerçek alan adınızla değiştirdiğinizden emin olun .

" CentOS 7 Nasıl Güncellenir " kılavuzunu kullanarak temel sisteminizi güncelleyin . Sisteminiz güncellendiğinde, Python'u yüklemeye devam edin.

Geliştirme Araçlarını Yükleyin

ERPNext çalışmak için Python sürüm 2.7'ye ihtiyaç duyar. Python 2.7 varsayılan olarak tüm CentOS sunucu örneklerinde yüklenir. Yüklü Python sürümünün çalışıp çalışmadığını kontrol edebilirsiniz:

python -V

Benzer çıktıyı almalısınız.

[user@vultr ~]$ python -V
Python 2.7.5

Yüklü Python sürümü en son sürüm olmasa da, sorunsuz bir şekilde çalışır. Python'un varsayılan sürümünün değiştirilmesi YUM'u bozabilir.

Development toolsYükleyici dosyalarını derlemek için gereken gruba paketleri yükleyin .

sudo yum groupinstall -y "Development tools"

Birkaç bağımlılık daha yükleyin:

sudo yum install -y redhat-lsb-core git python-setuptools python-devel openssl-devel libffi-devel

Python'un piparacını yükleyin . Pip, Python paketleri için bağımlılık yöneticisidir.

wget https://bootstrap.pypa.io/get-pip.py
sudo python get-pip.py

Yukarıdaki komut Pip'i sisteminize yükleyecektir. En son sürümünü olduğundan emin olmak için pipve setuptoolsçalıştırın:

sudo pip install --upgrade pip setuptools

Pip kullanarak Ansible'ı kurun. Ansible, yazılım sağlama, yapılandırma yönetimi ve uygulama dağıtımını otomatikleştirir.

sudo pip install ansible

MariaDB Sunucusunu Yükleyin

MariaDB, MySQL veritabanı sunucusunun bir çataldır. MariaDB'yi çalıştırarak yükleyin.

sudo yum -y install mariadb mariadb-server mysql-devel

ERPNext veritabanlarının oluşturulması için Barracuda depolama motoru gereklidir, bu nedenle MariaDB'yi Barracuda depolama motorunu kullanacak şekilde yapılandırmanız gerekir. Varsayılan MariaDB yapılandırma dosyasını düzenleyin my.cnf.

sudo nano /etc/my.cnf

symbolic-links=0Satırın altına aşağıdaki satırları ekleyin .

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

MariaDB'yi başlatın ve önyükleme zamanında otomatik olarak başlamasını sağlayın.

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

Veritabanını yapılandırmadan önce MariaDB'yi güvence altına almanız gerekir. mysql_secure_installationKomut dosyasını çalıştırarak güvenli hale getirebilirsiniz :

sudo mysql_secure_installation

Geçerli MariaDB kök parolasını girmeniz istenecektir. Varsayılan olarak, MariaDB'de ayarlanmış bir kök parolası yoktur. Devam etmek için "Enter" tuşuna basın. MariaDB sunucunuzun kök kullanıcısı için güçlü bir parola belirleyin ve sorulan diğer tüm sorulara "Y" yanıtını verin. Sorulan sorular açıklayıcıdır.

Nginx, Nodejs ve Redis'i yükleyin

EPEL deposu varsayılan olarak tüm Vultr CentOS 7 örneklerinde kurulduğundan, Redis ve Nginx'i doğrudan yükleyebilirsiniz. Ancak Node.js'nin en son sürümünü yüklemek için, Nodesource deposunu sisteminize eklemeniz gerekir.

Node.js 8.x için Nodesource deposunu ekleyin.

sudo curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -

Nginx, Nodejs ve Redis'i kurun:

sudo yum -y install nginx nodejs redis

Nginx'i başlatın ve çalıştırarak önyükleme zamanında başlamasını sağlayın:

sudo systemctl start nginx
sudo systemctl enable nginx

Redis'i başlatın ve çalıştırarak önyükleme zamanında başlamasını sağlayın:

sudo systemctl start redis
sudo systemctl enable redis

PDF Dönüştürücüyü Yükle

wkhtmltopdfProgram QT Webkit render motorunu kullanarak PDF içine bir komut satırı aracı dönüştüren HTML. Gerekli bağımlılıkları yükleyin:

sudo yum -y install libXrender libXext xorg-x11-fonts-75dpi xorg-x11-fonts-Type1

Uygulamasının en son sürümünü indirin wkhtmltopdf.

wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz

Arşivi çalıştırarak çıkartın:

sudo tar -xf wkhtmltox-0.12.4_linux-generic-amd64.tar.xz -C /opt

Yukarıdaki komut arşivi ayıklayacaktır /opt/wkhtmltox. Böylece sembolik bağ oluşturun wkhtmltopdfve wkhtmltoimagekomut olarak küresel çalıştırılabilir.

sudo ln -s /opt/wkhtmltox/bin/wkhtmltopdf /usr/bin/wkhtmltopdf
sudo ln -s /opt/wkhtmltox/bin/wkhtmltoimage /usr/bin/wkhtmltoimage

Şimdi wkhtmltopdf -Vçalışıp çalışmadığını kontrol etmek için komut çalıştırabilirsiniz , göreceksiniz:

[user@vultr ~]$ wkhtmltopdf -V
wkhtmltopdf 0.12.4 (with patched qt)

Bu noktada, gerekli tüm bağımlılıklar kurulu. Şimdi Tezgahı kurmaya devam edebilirsiniz.

Tezgahı Yükle

Benchhem geliştirme hem de üretim amaçları için ERPNext uygulamasını Unix tabanlı bir sisteme kurmak ve yönetmek için Frappe tarafından sağlanan bir komut satırı yardımcı programıdır. Bench ayrıca Nginx ve süpervizör yapılandırmasını da oluşturabilir ve yönetebilir.

İzole edilmiş ortamda Tezgah işlemlerini çalıştırmak için yeni bir kullanıcı oluşturun.

sudo adduser bench -d /opt/bench

Kullanıcının şifresini değiştirin.

sudo passwd bench

Kullanıcıya sudoizinler verin bench.

sudo usermod -aG wheel bench

Yeni oluşturulan benchkullanıcı olarak giriş yapın:

sudo su - bench

Tezgah deposunu klonlayın /opt/bench:

cd /opt/bench
git clone https://github.com/frappe/bench bench-repo

Tezgahı kullanarak kurun pip.

sudo pip install -e bench-repo

Tezgah kurulduktan sonra, Tezgahı kullanarak ERPNext kurulumuna devam edin.

Tezgahı kullanarak ERPNext kurulumu

Frappe çerçevesi kurulu bir tezgah dizini başlatın. Her şeyi düzenli tutmak için /opt/benchdizin altında çalışacağız . Bench ayrıca günde bir kez düzenli yedeklemeler ve otomatik güncellemeler ayarlayacaktır.

cd /opt/bench
bench init erpnext && cd erpnext

Yeni bir Frappe sitesi oluşturun:

bench new-site erp.example.com

Yukarıdaki komut MySQL kök parolasını girmenizi ister. Daha önce MySQL kök kullanıcısı için belirlediğiniz şifreyi girin. Ayrıca yönetici hesabı için yeni bir şifre belirlemenizi ister. Daha sonra yönetici kontrol paneline giriş yapmak için bu şifreye ihtiyacınız olacaktır.

Tezgahı kullanarak uzak git deposundan ERPNext kurulum dosyalarını indirin.

bench get-app erpnext https://github.com/frappe/erpnext

ERPNext'i yeni oluşturulan sitenize yükleyin:

bench --site erp.example.com install-app erpnext

ERPNext sunucunuza kurulur. Uygulamanın başarıyla başlatılıp başlatılmadığını kontrol etmek için uygulamayı hemen başlatabilirsiniz:

bench start

Ancak, yürütmeyi durdurmalı ve uygulamayı üretim kullanımı için kurmaya devam etmelisiniz.

Kurulum Süpervizörü ve Nginx

Varsayılan olarak, ERPNext uygulaması standart HTTP bağlantı noktası 80'i değil, 8000 numaralı bağlantı noktasını dinler. Ayrıca, sunucuyu dünyaya tanıtacağımız için yerleşik web sunucusunun üretim kullanımı için çalıştırılması önerilmez. Bu nedenle, bir üretim web sunucusunu Apache veya Nginx gibi ters proxy olarak kullanmalısınız. Bu öğreticide, Bengin kullanılarak otomatik olarak yapılandırılabildiği için Nginx'i ters proxy olarak kullanacağız. Tezgah, ERPNext kurulumuna göre konfigürasyonu otomatik olarak oluşturabilir ve kurabilir.

Yukarıdaki komutu kullanarak uygulamayı başlatabilsek de, ERPNext'in çalıştırılması terminali kapatır kapatmaz duracaktır. Bu sorunun üstesinden gelmek için, uygulamayı sürekli olarak bir üretim ortamında çalıştırmakta çok yardımcı olan Süpervizörü kullanmanızı tavsiye ederim. Supervisor, Linux işletim sistemlerindeki bir dizi işlemi izlemenizi ve kontrol etmenizi sağlayan bir süreç kontrol sistemidir. Süpervizör yapılandırıldıktan sonra, uygulama açılışta ve hatalarda otomatik olarak başlatılır. Tezgah, ERPNext uygulaması için Süpervizörü otomatik olarak yapılandırabilir.

Süpervizörü Yükleyin:

sudo yum -y install supervisor

Süpervizörü başlatın ve önyükleme zamanında otomatik olarak başlamasını sağlayın:

sudo systemctl start supervisord
sudo systemctl enable supervisord

Üretim kullanımı için Tezgah:

 sudo bench setup production bench

Yukarıdaki komut, mevcut Yönetici varsayılan yapılandırma dosyasını yenisiyle değiştirmeden önce sizi uyarabilir. Devam yetmeyi seçin . Tezgah, Yönetici yapılandırma dosyasına bir dizi işlem ekler. Yukarıdaki komut ayrıca geçerli Nginx yapılandırmasını yenisiyle değiştirmek isteyip istemediğinizi de soracaktır. Devam yetmek için girin . Bench yapılandırmayı kurmayı tamamladıktan sonra, diğer kullanıcılara Bench kullanıcısı ana dizininizdeki dosyaları yürütmelerini sağlayın.

chmod o+x /opt/bench/

Sunucunuzda bir güvenlik duvarı çalıştırıyorsanız, HTTP servisine bir istisna ayarlamak için güvenlik duvarını yapılandırmanız gerekir. Nginx reverse proxy'nin ağ dışından bağlanmasına izin verin.

sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload

Artık siteye adresinden erişebilirsiniz http://erp.example.com.

İşlemlerin durumunu çalıştırarak kontrol edebilirsiniz:

sudo supervisorctl status all

Aşağıdaki çıktıyı görmelisiniz:

[bench@vultr ~]$ sudo supervisorctl status all
erpnext-redis:erpnext-redis-cache                 RUNNING   pid 2554, uptime 1:06:58
erpnext-redis:erpnext-redis-queue                 RUNNING   pid 2553, uptime 1:06:58
erpnext-redis:erpnext-redis-socketio              RUNNING   pid 2555, uptime 1:06:58
erpnext-web:erpnext-frappe-web                    RUNNING   pid 2559, uptime 1:06:58
erpnext-web:erpnext-node-socketio                 RUNNING   pid 2556, uptime 1:06:58
erpnext-workers:erpnext-frappe-default-worker-0   RUNNING   pid 2549, uptime 1:06:58
erpnext-workers:erpnext-frappe-long-worker-0      RUNNING   pid 2551, uptime 1:06:58
erpnext-workers:erpnext-frappe-schedule           RUNNING   pid 2550, uptime 1:06:58
erpnext-workers:erpnext-frappe-short-worker-0     RUNNING   pid 2552, uptime 1:06:58

Tüm ERPNext işlemlerini durdurmak için şunu kullanın:

sudo supervisorctl stop all

Tüm ERPNext işlemlerini başlatmak için şunu kullanın:

sudo supervisorctl start all

Let's Encrypt Kullanarak SSL Ayarlama

Let's Encrypt kullanıcılara ücretsiz SSL sertifikaları sağlar. SSL, Tezgah üzerinden manuel veya otomatik olarak kurulabilir. Bench, Let's Encrypt istemcisini otomatik olarak kurabilir ve sertifikaları alabilir. Ayrıca, sertifikaları kullanmak için Nginx yapılandırmasını otomatik olarak güncelleştirir.

Let's Encrypt CA'dan sertifika almak için kullandığınız etki alanı adı sunucuya yönlendirilmelidir. İstemci, sertifikaları vermeden önce etki alanı yetkilisini doğrular.

ERPNext uygulaması için DNS çoklu kiracılığını etkinleştirin.

bench config dns_multitenant on

Sitenize Şifreleyelim'i kurmak için Tezgahı çalıştırın:

sudo bench setup lets-encrypt erp.example.com

Komut dosyasının yürütülmesi sırasında, Let's Encrypt istemcisi sizden Nginx web sunucusunu geçici olarak durdurmanızı isteyecektir. Gerekli paketleri ve Let's Encrypt istemcisini otomatik olarak yükleyecektir. İstemci e-posta adresinizi soracaktır. Ayrıca şartlar ve koşulları da kabul etmeniz gerekir. Sertifikalar oluşturulduktan sonra Bench, Nginx için SSL sertifikalarını kullanan yeni yapılandırmayı da üretecek. Mevcut yapılandırmayı değiştirmeden önce sizden istenecektir. Bench ayrıca crontabsertifikaları her ay otomatik olarak yenilemek için bir giriş oluşturur .

Son olarak, zamanlayıcıyı zamanlanan işleri otomatik olarak çalıştırmak için etkinleştirin:

bench enable-scheduler

Görmelisin:

[bench@vultr erpnext]$ bench enable-scheduler
Enabled for erp.example.com

Paketleme

İşlem bittiğinde, uygulamanıza adresinden erişebilirsiniz https://erp.example.com. AdministratorYükleme sırasında belirlediğiniz kullanıcı adı ve parola ile oturum açın. ERPNext ERP'yi şirketinize göre ayarlamak için bilgi vermeniz gereken masaya yönlendirileceksiniz. Artık uygulamayı şirketinizi yönetmek için kullanabilirsiniz.

Tebrikler, CentOS 7 sunucunuzda tam olarak çalışan bir ERPNext uygulamanız var.



Leave a Comment

CentOS 7de LibreNMS Kullanarak Cihazlarınızı İzleyin

CentOS 7de LibreNMS Kullanarak Cihazlarınızı İzleyin

CentOS 7 üzerinde LibreNMS kullanarak ağ cihazlarınızı etkili bir şekilde izleyin. Ağ izleme için gerekli adımları ve yapılandırmaları öğrenin.

Counter-Strike: Global Offensive Server Nasıl Kurulur?

Counter-Strike: Global Offensive Server Nasıl Kurulur?

Counter-Strike: Global Offensive sunucusu kurmak için gerekli adımlar. Gerekli araçlar ve yükleme süreci hakkında bilgi.

Ubuntu 16.04 LTS Üzerinde OpenNMS Kurulumu

Ubuntu 16.04 LTS Üzerinde OpenNMS Kurulumu

OpenNMS, çok sayıda cihazı izlemek ve yönetmek için kullanılabilen bir açık kaynak ağ yönetim platformudur. Ubuntu 16.04 LTS üzerinde OpenNMS kurulumu için tüm adımları keşfedin.

Ubuntu 16.04te LibreNMS Kullanarak Cihazlarınızı İzleyin

Ubuntu 16.04te LibreNMS Kullanarak Cihazlarınızı İzleyin

Farklı Bir Sistem mi Kullanıyorsunuz? LibreNMS tam özellikli bir açık kaynak ağ izleme sistemidir.

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.

Hala Teslim Edilmeyen Teknoloji Sözleri

Hala Teslim Edilmeyen Teknoloji Sözleri

Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA, son birkaç yılda kullanıcıların çözmesi oldukça zorlaştı. Gelecekte spam ve bot tespitinde etkili kalabilecek mi?