Как установить Anchor CMS на CentOS 7 LAMP VPS
Используете другую систему? Anchor CMS - это сверхпростая и чрезвычайно легкая бесплатная система управления контентом (CMS) с открытым исходным кодом.
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
Механизм хранения Barracuda требуется для создания баз данных ERPNext, поэтому вам необходимо настроить 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 вашего сервера 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 и supervisor.
Создайте нового пользователя для запуска процессов 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.
Инициализируйте стендовый каталог с установленным фреймворком. Чтобы сохранить все в порядке, мы будем работать в /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 для использования сертификатов.
Доменное имя, которое вы используете для получения сертификатов от Let's Encrypt CA, должно быть указано на сервер. Клиент проверяет полномочия домена перед выдачей сертификатов.
Включите многопользовательский режим 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.
Используете другую систему? Anchor CMS - это сверхпростая и чрезвычайно легкая бесплатная система управления контентом (CMS) с открытым исходным кодом.
При настройке нового сервера Linux рекомендуется обновить ядро системы и другие пакеты до последней стабильной версии. В этой статье
Используете другую систему? Backdrop CMS 1.8.0 - это простая и гибкая, удобная для мобильных устройств, бесплатная система с открытым исходным кодом (CMS), которая позволяет нам
Если вы хотите разместить свой инвентарь в Интернете или просто магазин технических аксессуаров, Magento - отличное решение для электронной коммерции в Интернете. Это статья
Используете другую систему? AirSonic - это бесплатный и потоковый сервер с открытым исходным кодом. В этом уроке я проведу вас через процесс развертывания
OrangeScrum - это бесплатный инструмент управления проектами с открытым исходным кодом, который широко используется в малом и среднем бизнесе. В этой статье я проведу вас через
OrientDB - это мультимодельная СУБД NoSQL с открытым исходным кодом нового поколения. Благодаря поддержке нескольких моделей данных OrientDB может обеспечить большую функциональность и гибкость в
Vtiger CRM - это популярное приложение для управления взаимоотношениями с клиентами, которое может помочь предприятиям увеличить продажи, обеспечить обслуживание клиентов и увеличить прибыль. я
MaraDNS - это легкая, но надежная программа с открытым исходным кодом для DNS-сервера. По сравнению с другими приложениями того же типа, такими как ISC BIND, PowerDNS и djbdns
Используете другую систему? Netdata - восходящая звезда в области мониторинга показателей системы в режиме реального времени. По сравнению с другими инструментами того же рода, Netdata:
Используете другую систему? В этом уроке я расскажу, как настроить сервер Starbound в CentOS 7. Предварительные условия Вы должны иметь эту игру на себе
RabbitMQ - это брокер сообщений с открытым исходным кодом, который поддерживает AMQP, STOMP и другие коммуникационные технологии. Широко используется в корпоративных приложениях
Добро пожаловать в другой учебник Vultr. Здесь вы узнаете, как установить и запустить сервер SAMP. Это руководство было написано для CentOS 6. Предварительные условия
Используете другую систему? Elgg - это движок социальных сетей с открытым исходным кодом, который позволяет создавать социальные среды, такие как социальные сети кампуса и
Bolt - это CMS с открытым исходным кодом, написанная на PHP. Исходный код Bolts размещен на GitHub. Это руководство покажет вам, как установить Bolt CMS на новую CentOS 7 Vult.
Традиционные подходы к анализу данных невозможно использовать, когда наборы данных достигают определенного размера. Современная альтернатива анализу огромных массивов данных, которые я
Elasticsearch - популярный движок полнотекстового поиска и аналитики с открытым исходным кодом. Благодаря своей универсальности, масштабируемости и простоте использования, Elasticsearch широко используется
Обзор Эта статья призвана помочь вам в кратчайшие сроки запустить и запустить кластер Kubernetes с помощью kubeadm. Это руководство будет развертывать два сервера, на
Используете другую систему? Введение Sails.js - это инфраструктура MVC для Node.js, аналогичная Ruby on Rails. Это делает для разработки современных приложений вер
Введение В этом руководстве мы будем устанавливать PufferPanel на нашем Vultr VPS. PufferPanel - это бесплатная панель управления с открытым исходным кодом для управления вами.
Изучение 26 методов анализа больших данных: часть 1
Многие из вас знают Switch, который выйдет в марте 2017 года, и его новые функции. Для тех, кто не знает, мы подготовили список функций, которые делают «Switch» обязательным гаджетом.
Вы ждете, когда технологические гиганты выполнят свои обещания? проверить, что осталось недоставленным.
Прочтите блог, чтобы узнать о различных уровнях архитектуры больших данных и их функциях самым простым способом.
Прочтите это, чтобы узнать, как искусственный интеллект становится популярным среди небольших компаний и как он увеличивает вероятность их роста и дает преимущество перед конкурентами.
CAPTCHA стало довольно сложно решать пользователям за последние несколько лет. Сможет ли он оставаться эффективным в обнаружении спама и ботов в ближайшем будущем?
По мере того, как наука развивается быстрыми темпами, принимая на себя большую часть наших усилий, также возрастает риск подвергнуться необъяснимой сингулярности. Прочтите, что может значить для нас необычность.
Что такое телемедицина, дистанционное здравоохранение и их влияние на будущее поколение? Это хорошее место или нет в ситуации пандемии? Прочтите блог, чтобы узнать мнение!
Возможно, вы слышали, что хакеры зарабатывают много денег, но задумывались ли вы когда-нибудь о том, как они зарабатывают такие деньги? Давайте обсудим.
Недавно Apple выпустила macOS Catalina 10.15.4, дополнительное обновление для исправления проблем, но похоже, что это обновление вызывает больше проблем, приводящих к поломке компьютеров Mac. Прочтите эту статью, чтобы узнать больше