Встановіть Plesk на CentOS 7
Використання іншої системи? Plesk — це власна панель керування веб-хостом, яка дозволяє користувачам адмініструвати свої персональні та/або клієнтські веб-сайти, бази даних
ERP або Enterprise Resource Planning — це пакет корпоративних програм, який використовується для керування основними бізнес-процесами. ERPNext — це безкоштовна програма ERP з відкритим вихідним кодом, написана на Python. Він використовує Node.js для інтерфейсу і MariaDB для зберігання своїх даних. ERPNext надає простий у використанні веб-інтерфейс, який дозволяє підприємствам керувати повсякденними завданнями. Він містить модулі для бухгалтерського обліку, CRM, HRM, виробництва, POS, управління проектами, закупівлі, управління продажами, управління складом тощо. ERPNext можна використовувати для управління різними галузями, такими як постачальники послуг, виробництво, роздрібна торгівля та школи.
У цьому підручнику ми встановимо ERPNext на CentOS 7.
У цьому посібнику ми будемо використовувати erp.example.com
як доменне ім’я, яке вказує на сервер. Будь ласка, не забудьте замінити всі входження на erp.example.com
ваше фактичне доменне ім’я.
Оновіть свою базову систему за допомогою посібника « Як оновити CentOS 7 ». Після оновлення системи перейдіть до встановлення Python.
Для роботи ERPNext потрібна версія Python 2.7. Python 2.7 встановлюється за замовчуванням у всіх екземплярах сервера CentOS. Ви можете перевірити, чи встановлена версія Python, запустивши:
python -V
Ви повинні отримати аналогічний результат.
[user@vultr ~]$ python -V
Python 2.7.5
Хоча встановлена версія Python не остання, вона працює без проблем. Зміна версії Python за замовчуванням може порушити YUM.
Встановіть пакунки в Development tools
групі, необхідні для компіляції файлів інсталятора.
sudo yum groupinstall -y "Development tools"
Встановіть ще кілька залежностей:
sudo yum install -y redhat-lsb-core git python-setuptools python-devel openssl-devel libffi-devel
Встановіть pip
інструмент Python . Pip — це менеджер залежностей для пакетів Python.
wget https://bootstrap.pypa.io/get-pip.py
sudo python get-pip.py
Наведена вище команда встановить Pip у вашу систему. Щоб переконатися, що у вас є остання версія pip
та setuptools
, запустіть:
sudo pip install --upgrade pip setuptools
Встановіть Ansible за допомогою Pip. Ansible автоматизує надання програмного забезпечення, керування конфігурацією та розгортання додатків.
sudo pip install ansible
MariaDB — це форк сервера баз даних MySQL. Встановіть MariaDB, запустивши.
sudo yum -y install mariadb mariadb-server mysql-devel
Для створення баз даних ERPNext потрібен механізм зберігання Barracuda, тому вам потрібно буде налаштувати MariaDB для використання механізму зберігання Barracuda. Відредагуйте файл конфігурації MariaDB за замовчуванням my.cnf
.
sudo nano /etc/my.cnf
Додайте наступні рядки під symbolic-links=0
рядком.
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 і ввімкніть її автоматичний запуск під час завантаження.
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
Перед налаштуванням бази даних вам потрібно буде захистити MariaDB. Ви можете захистити його, запустивши mysql_secure_installation
скрипт:
sudo mysql_secure_installation
Вас попросять ввести поточний пароль root MariaDB. За замовчуванням у MariaDB не встановлено пароль root. Натисніть клавішу «Enter», щоб продовжити. Встановіть надійний пароль для користувача root вашого сервера MariaDB і дайте відповідь «Y» на всі інші запитання. Запитання, що задаються, зрозумілі самі собою.
Оскільки репозиторій EPEL встановлено за замовчуванням у всіх екземплярах Vultr CentOS 7, ви можете безпосередньо встановити Redis і Nginx. Але щоб встановити останню версію Node.js, вам потрібно буде додати репозиторій Nodesource у вашу систему.
Додайте репозиторій Nodesource для Node.js 8.x.
sudo curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -
Встановіть Nginx, Nodejs і Redis:
sudo yum -y install nginx nodejs redis
Запустіть Nginx і ввімкніть його запуск під час завантаження, виконавши:
sudo systemctl start nginx
sudo systemctl enable nginx
Запустіть Redis і ввімкніть його запуск під час завантаження, виконавши:
sudo systemctl start redis
sudo systemctl enable redis
wkhtmltopdf
Програма представляє собою лінію інструменту команди , яка перетворює HTML в PDF , використовуючи движок рендеринга Webkit QT. Встановіть необхідні залежності:
sudo yum -y install libXrender libXext xorg-x11-fonts-75dpi xorg-x11-fonts-Type1
Завантажте останню версію wkhtmltopdf
.
wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz
Розпакуйте архів, запустивши:
sudo tar -xf wkhtmltox-0.12.4_linux-generic-amd64.tar.xz -C /opt
Наведена вище команда розпакує архів до /opt/wkhtmltox
. Створіть програмне посилання, щоб wkhtmltopdf
і wkhtmltoimage
можна було виконувати глобально як команду.
sudo ln -s /opt/wkhtmltox/bin/wkhtmltopdf /usr/bin/wkhtmltopdf
sudo ln -s /opt/wkhtmltox/bin/wkhtmltoimage /usr/bin/wkhtmltoimage
Тепер ви можете запустити wkhtmltopdf -V
команду, щоб перевірити, чи вона працює, ви побачите:
[user@vultr ~]$ wkhtmltopdf -V
wkhtmltopdf 0.12.4 (with patched qt)
На даний момент ми встановили всі необхідні залежності. Тепер можна переходити до встановлення Bench.
Bench
— це утиліта командного рядка, надана Frappe для встановлення та керування програмою ERPNext в системі на базі Unix як для розробки, так і для виробництва. Bench також може створювати й керувати конфігурацією Nginx та супервізора.
Створіть нового користувача для запуску процесів Bench в ізольованому середовищі.
sudo adduser bench -d /opt/bench
Змінити пароль користувача.
sudo passwd bench
Надати користувачеві sudo
дозволи bench
.
sudo usermod -aG wheel bench
Увійдіть як новостворений bench
користувач:
sudo su - bench
Клонуйте репозиторій Bench у /opt/bench
:
cd /opt/bench
git clone https://github.com/frappe/bench bench-repo
Встановіть Bench за допомогою pip
.
sudo pip install -e bench-repo
Після встановлення Bench перейдіть до встановлення ERPNext за допомогою Bench.
Ініціалізуйте бенч-каталог із встановленим фреймворком frappe. Щоб все було в порядку, ми будемо працювати під /opt/bench
каталогом. Bench також налаштує регулярне резервне копіювання та автоматичне оновлення раз на день.
cd /opt/bench
bench init erpnext && cd erpnext
Створіть новий сайт Frappe:
bench new-site erp.example.com
Наведена вище команда запропонує вам ввести пароль root MySQL. Введіть пароль, який ви встановили для користувача root MySQL раніше. Він також попросить вас встановити новий пароль для облікового запису адміністратора. Цей пароль вам знадобиться пізніше, щоб увійти в інформаційну панель адміністратора.
Завантажте інсталяційні файли ERPNext з віддаленого репозиторію git за допомогою Bench.
bench get-app erpnext https://github.com/frappe/erpnext
Встановіть ERPNext на новоствореному сайті:
bench --site erp.example.com install-app erpnext
ERPNext встановлено на вашому сервері. Ви можете негайно запустити програму, щоб перевірити, чи програма запущена успішно:
bench start
Однак вам слід зупинити виконання та продовжити налаштування програми для виробничого використання.
За замовчуванням програма ERPNext прослуховує порт 8000, а не стандартний порт HTTP 80. Крім того, не рекомендується запускати вбудований веб-сервер для виробничого використання, оскільки ми будемо відкривати сервер у всьому світі. Отже, ви повинні використовувати робочий веб-сервер як зворотний проксі-сервер, наприклад Apache або Nginx. У цьому посібнику ми будемо використовувати Nginx як зворотний проксі-сервер, оскільки його можна автоматично налаштувати за допомогою Bench. Bench може автоматично згенерувати та встановити конфігурацію відповідно до налаштувань ERPNext.
Хоча ми можемо запустити програму за допомогою наведеної вище команди, виконання ERPNext зупиниться, як тільки ви закриєте термінал. Щоб подолати цю проблему, я рекомендую використовувати Supervisor, який дуже корисний для безперервної роботи програми у виробничому середовищі. Supervisor — це система керування процесами, яка дає змогу контролювати й контролювати низку процесів в операційних системах Linux. Після налаштування Supervisor він автоматично запускатиме програму під час завантаження, а також у разі збою. Bench може автоматично налаштувати Supervisor для програми ERPNext.
Встановити Supervisor:
sudo yum -y install supervisor
Запустіть Supervisor і ввімкніть його автоматичний запуск під час завантаження:
sudo systemctl start supervisord
sudo systemctl enable supervisord
Установочний стенд для виробничого використання:
sudo bench setup production bench
Наведена вище команда може запропонувати вам перед заміною існуючого конфігураційного файлу Supervisor за замовчуванням на новий. Виберіть y
продовжити. Bench додає ряд процесів у файл конфігурації Supervisor. Наведена вище команда також запитає, чи бажаєте ви замінити поточну конфігурацію Nginx новою. Введіть, y
щоб продовжити. Після того, як Bench закінчить встановлення конфігурації, надайте іншим користувачам можливість виконувати файли у вашому домашньому каталозі користувача Bench.
chmod o+x /opt/bench/
Якщо ви використовуєте брандмауер на своєму сервері, вам потрібно буде налаштувати брандмауер, щоб встановити виняток для служби HTTP. Дозволити зворотному проксі-серверу Nginx підключатися поза мережею.
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload
Тепер ви можете отримати доступ до сайту на http://erp.example.com
.
Ви можете перевірити стан процесів, запустивши:
sudo supervisorctl status all
Ви повинні побачити такий вихід:
[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
Щоб зупинити всі процеси ERPNext, використовуйте:
sudo supervisorctl stop all
Щоб запустити всі процеси ERPNext, використовуйте:
sudo supervisorctl start all
Let's Encrypt надає користувачам безкоштовні сертифікати SSL. SSL можна встановити вручну або автоматично через Bench. Bench може автоматично встановити клієнт Let's Encrypt і отримати сертифікати. Крім того, він автоматично оновлює конфігурацію Nginx для використання сертифікатів.
The domain name which you are using to obtain the certificates from the Let's Encrypt CA must be pointed towards the server. The client verifies the domain authority before issuing the certificates.
Увімкніть мультитенантність DNS для програми ERPNext.
bench config dns_multitenant on
Запустіть Bench, щоб налаштувати Let's Encrypt на своєму сайті:
sudo bench setup lets-encrypt erp.example.com
Під час виконання сценарію клієнт Let's Encrypt попросить вас тимчасово зупинити веб-сервер Nginx. Він автоматично встановить необхідні пакунки та клієнт Let's Encrypt. Клієнт запитає вашу адресу електронної пошти. Вам також потрібно буде прийняти умови використання. Після створення сертифікатів Bench також згенерує нову конфігурацію для Nginx, яка використовує сертифікати SSL. Перед заміною наявної конфігурації вам буде запропоновано. Bench також створює crontab
запис для автоматичного поновлення сертифікатів щомісяця.
Нарешті, увімкніть планувальник, щоб автоматично запускати заплановані завдання:
bench enable-scheduler
Ви повинні побачити:
[bench@vultr erpnext]$ bench enable-scheduler
Enabled for erp.example.com
Після завершення процесу ви зможете отримати доступ до своєї програми за адресою https://erp.example.com
. Увійдіть за допомогою імені користувача Administrator
та пароля, які ви встановили під час встановлення. Вас переведуть до столу, де вам потрібно буде надати інформацію, щоб налаштувати ERPNext ERP відповідно до вашої компанії. Тепер ви можете використовувати програму для керування своєю компанією.
Вітаємо, на вашому сервері CentOS 7 встановлено повністю працюючу програму ERPNext.
Використання іншої системи? Plesk — це власна панель керування веб-хостом, яка дозволяє користувачам адмініструвати свої персональні та/або клієнтські веб-сайти, бази даних
Squid — популярна безкоштовна програма для Linux, яка дозволяє створювати веб-проксі для переадресації. У цьому посібнику ви дізнаєтеся, як встановити Squid на CentOS, щоб перетворити вас
Вступ Lighttpd — це форк Apache, який має набагато меншу ресурсомісткість. Він легкий, звідси його назва, і досить простий у використанні. Встановити
VULTR нещодавно вніс зміни на свою сторону, і тепер усе має працювати нормально з коробки з увімкненим NetworkManager. Якщо ви бажаєте вимкнути
Icinga2 — це потужна система моніторингу, і при використанні в моделі «майстер-клієнт» вона може замінити потребу в перевірках моніторингу на основі NRPE. Майстер-клієнт
Використання іншої системи? Apache Cassandra — це безкоштовна система керування базами даних NoSQL з відкритим вихідним кодом, яка розроблена для забезпечення масштабованості, високої
Використання іншої системи? Microweber — це CMS та інтернет-магазин із відкритим вихідним кодом. Вихідний код Microweber розміщено на GitHub. Цей посібник покаже вам
Використання іншої системи? Vanilla forum — це програма з відкритим вихідним кодом, написана на PHP. Це повністю настроюваний, простий у використанні та підтримує зовнішній вигляд
Використання іншої системи? Mattermost — це автономна альтернатива службі обміну повідомленнями Slack SAAS з відкритим кодом. Іншими словами, з Mattermost ви бл
Панель керування Plesk має дуже гарну інтеграцію для Lets Encrypt. Lets Encrypt є одним із єдиних постачальників SSL, які надають сертифікати повністю
Lets Encrypt — це центр сертифікації, який надає безкоштовні сертифікати SSL. cPanel створив чітку інтеграцію, щоб ви і ваш клієнт
Використання іншої системи? Concrete5 — це CMS з відкритим вихідним кодом, яка пропонує багато відмінних і корисних функцій, які допомагають редакторам легко створювати вміст.
Використання іншої системи? Review Board — це безкоштовний інструмент з відкритим кодом для перегляду вихідного коду, документації, зображень та багато іншого. Це веб-програмне забезпечення
У цьому посібнику ви дізнаєтеся, як налаштувати автентифікацію HTTP для веб-сервера Nginx, що працює на CentOS 7. Вимоги Щоб почати, вам знадобиться
Використання іншої системи? GoAccess — це аналізатор веб-журналів з відкритим вихідним кодом. Ви можете використовувати його для аналізу журналів у режимі реального часу в терміналі або
YOURLS (Your Own URL Shortener) — програма для скорочення URL-адрес і аналізу даних із відкритим вихідним кодом. У цій статті ми розглянемо процес встановлення
Використання іншої системи? Вступ ArangoDB — це відкрита база даних NoSQL з гнучкою моделлю даних для документів, графіків і ключів-значень. це є
Вступ Каталог /etc/ відіграє важливу роль у функціонуванні системи Linux. Причина цього в тому, що майже кожна конфігурація системи
Багато системних адміністраторів керують великою кількістю серверів. Якщо потрібно отримати доступ до файлів на різних серверах, увійти на кожен окремо бл
У цьому посібнику буде описано процес встановлення ігрового сервера Half Life 2 на систему CentOS 6. Крок 1: Встановлення необхідних умов Щоб налаштувати ou
Штучний інтелект не в майбутньому, він тут прямо в сьогоденні У цьому блозі Прочитайте, як програми штучного інтелекту вплинули на різні сектори.
Ви також стали жертвою DDOS-атак і спантеличені методами запобігання? Прочитайте цю статтю, щоб вирішити свої запитання.
Можливо, ви чули, що хакери заробляють багато грошей, але чи замислювалися ви коли-небудь, як вони заробляють такі гроші? давайте обговоримо.
Ви хочете побачити революційні винаходи Google і як ці винаходи змінили життя кожної людини сьогодні? Тоді читайте в блозі, щоб побачити винаходи Google.
Концепція самокерованих автомобілів, щоб вирушати в дороги за допомогою штучного інтелекту, є мрією, яку ми давно мріємо. Але, незважаючи на кілька обіцянок, їх ніде не видно. Прочитайте цей блог, щоб дізнатися більше…
Оскільки наука розвивається швидкими темпами, бере на себе багато наших зусиль, ризики піддати себе незрозумілій Сингулярності також зростає. Читайте, що може означати для нас сингулярність.
Методи зберігання даних можуть розвиватися з моменту народження Даних. Цей блог висвітлює еволюцію зберігання даних на основі інфографіки.
Прочитайте блог, щоб дізнатися про різні шари архітектури великих даних та їх функціональні можливості найпростішим способом.
У цьому цифровому світі пристрої розумного дому стали важливою частиною життя. Ось кілька дивовижних переваг пристроїв розумного дому щодо того, як вони роблять наше життя гідним життя та спрощують його.
Нещодавно Apple випустила додаткове оновлення macOS Catalina 10.15.4, щоб виправити проблеми, але схоже, що оновлення викликає більше проблем, що призводять до блокування комп’ютерів Mac. Прочитайте цю статтю, щоб дізнатися більше