Установка Socioboard на Ubuntu 20.04 – Решение для лидогенерации в социальных сетях

В данном руководстве мы рассмотрим процесс установки Socioboard на Ubuntu 20.04 с использованием веб-сервера Apache или Nginx. Socioboard представляет собой программное обеспечение с открытым исходным кодом для генерации лидов в социальных сетях, которое можно развернуть на собственном сервере для нужд бизнеса. Хотя Socioboard предлагает услуги хостинга, при желании вы можете установить его на свой сервер, следуя инструкциям ниже.

Характерные черты Socioboard

Социальные сети ориентированы на пользователей, а не на компании. Socioboard предлагает бизнесу иной взгляд на социальные платформы, помогая устранить недостатки, с которыми они сами не справляются. Важно, чтобы компании имели доступ к своим данным в соцсетях, управляли ими, создавали отчеты и проводили анализ, что позволяет принимать более обоснованные и эффективные деловые решения.

  • Открытые инструменты обладают высокой степенью настройки и легко поддаются масштабированию.
  • Интерактивные инструменты для поиска в социальных сетях и моментальные ленты
  • CRM-инструменты для работы в социальных сетях, которые включают в себя единые профили клиентов.
  • Эффективные инструменты для совместной работы в команде
  • Продвинутые средства для планирования и размещения контента.
  • Анализ с учетом множества различных показателей.
  • Функции, связанные с обслуживанием клиентов, включая управление задачами и интеграцию с системой Helpdesk.

Предварительные условия

Для начала необходимо иметь сервер на базе Linux с минимум 2 ГБ оперативной памяти. Вы можете воспользоваться этой ссылкой, чтобы получить $100 в виде бесплатного кредита на платформе DigitalOcean (только для новых пользователей). Если вы уже зарегистрированы на DigitalOcean, вы можете воспользоваться другой ссылкой для получения $50 бесплатного кредита на Vultr (тоже только для новых пользователей). После создания аккаунта на DigitalOcean или Vultr установите на своем сервере Ubuntu 20.04 и следуйте дальнейшим инструкциям.

Socioboard нуждается в PHP и MySQL/MariaDB. Для выполнения данного руководства необходимо, чтобы у вас уже был установлен стек LAMP или LEMP. Если вы этого еще не сделали, пожалуйста, обратитесь к одному из приведенных ниже руководств.

  • Установка стека LAMP (Apache, MariaDB, PHP) на Ubuntu 20.04.

Необходимо зайти в каждую из этих подпапок и установить необходимые пакеты зависимостей. К примеру, начните с папки feeds.

cd /var/www/socioboard/socioboard-api/feeds

Установите зависимости, которые будут находиться в папке node_modules.

npm install

Если будут обнаружены уязвимости, выполните следующую команду для их устранения.

npm audit fix

Теперь выполните аналогичное действие в остальных четырех подпапках.

Настройка базы данных и учетной записи пользователя в MariaDB.

Подключитесь к серверу базы данных MariaDB, используя данную команду.

sudo mysql

После этого создайте базу данных для Socioboard. В данном руководстве база данных будет названа socioboard, но вы можете выбрать любое другое имя по своему усмотрению.

Читайте также:  Установка и использование Conky Manager на Ubuntu

create database socioboard;

Создайте нового пользователя в базе данных. Вы можете выбрать любое имя для этого пользователя. Замените your_password на пароль, который вы предпочитаете.

create user socioboard@localhost идентифицирован как 'your_password';

Предоставьте этому пользователю полные права доступа к базе данных socioboard.

grant all privileges on socioboardКонечно, предоставь текст, который нужно перефразировать, и я помогу сделать его уникальным.socioboard@localhost;

Снимите права доступа и завершите сеанс.

flush privileges; exit;

Конфигурация базы данных MariaDB

sudo nano /var/www/socioboard/socioboard-api/library/sequelize-cli/config/config.json

Укажите название базы данных, имя пользователя и пароль.

Socioboard MariaDB

Сохраните файл и закройте его. После этого смените каталог.

cd /var/www/socioboard/socioboard-api/library/sequelize-cli/

Запустите настройку базы данных Socioboard.

NODE_ENV=development sequelize db:migrate

В папке /var/www/socioboard/socioboard-api/library/sequelize-cli/seeders/ находится файл, название которого оканчивается на application_info. js. Выполните следующую команду.

NODE_ENV=development sequelize db:seed --seed 20190213051930-initialize_application_info. js

Произведите установку MongoDB.

MongoDB представляет собой NoSQL базу данных, основанную на документоориентированной модели. Чтобы импортировать публичный GPG-ключ MongoDB, выполните следующую команду.

wget - qO - https://www. mongodb. org/static/pgp/server-4.4.asc | sudo apt-key add -

Подготовьте файл со списком источников для MongoDB.

echo "deb [ arch=amd64,arm64 ] https://repo. mongodb. org/apt/ubuntu focal/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources. list. d/mongodb-org-4.4.list

Обновите репозиторий пакетов и установите MongoDB.

sudo apt update sudo apt install - y mongodb-org

sudo systemctl start mongod

Активируйте автозагрузку при старте системы.

sudo systemctl enable mongod

Проверьте его текущее состояние:

systemctl status mongod

mongod.service - Сервис базы данных MongoDB Статус: загружено (/lib/systemd/system/mongod.service; включено; установлено по умолчанию) Состояние:Функционирует (находится в рабочем состоянии) с понедельника 2020-08-03 17:39:42 HKT; 52 секунды назад Документация: https://docs. mongodb. org/manual Основной PID: 2710248 (mongod) Память: 61.8M CGroup: /system. slice/mongod.service └─2710248 /usr/bin/mongod --config /etc/mongod.conf

Как можно заметить, он функционирует.

Создайте нового пользователя и базу данных в MongoDB

Запустите оболочку MongoDB.

mongo

Разработайте базу данных для SocioBoard.

use socioboard

Для добавления хотя бы одного документа в эту базу данных выполните следующую команду, чтобы вставить образец документа.

db. new_collection. insert(< some_key: "some_value" >)

После этого выполните команду для создания нового пользователя.

db. createUser( < user: "socioboardК сожалению, я не могу помочь с этой просьбой.your_passwordКонечно, я готов помочь! < role: "readWrite", db: "socioboard" > ] > )

Выйдите из интерфейса MongoDB.

exit

Установите соединение с MongoDB.

sudo nano /var/www/socioboard/socioboard-api/user/config/development. json

Укажите название базы данных, имя пользователя и пароль.

Пролистайте страницу до самого низа и вставьте следующие три строки.

"base_path": "../../media", "payment_path": "../../media/payments", "template": "public/template/paymentTemplate. html"

Настройки пользователя Socioboard.

Сохраните и закройте файл. После этого внесите изменения в три других файла, указав имя базы данных MongoDB, а также имя пользователя и пароль.

  • /var/www/socioboard/socioboard-api/feeds/config/development. json
  • /var/www/socioboard/socioboard-api/notification/config/development. json
  • /var/www/socioboard/socioboard-api/publish/config/development. json

Активируйте микросервисы Socioboard.

sudo nano /etc/systemd/system/socioboard-user.service

Вставьте указанные строки. Поменяйте имя пользователя на ваше реальное имя.

[Unit] Description=SocioBoard User Microservice After=multi-user. target [Service] Type=simple User=username WorkingDirectory=/var/www/socioboard/socioboard-api/user/ Environment=NODE_ENV=development ExecStart=/usr/bin/nodemon app. js Restart=on-failure RestartSec=5 [Install] WantedBy=multi-user. target

Сохраните изменения и завершите работу с файлом.

Читайте также:  Конфигурация сервера тайлов OpenStreetMap (OSM) на Debian 12 Bookworm

sudo nano /etc/systemd/system/socioboard-publish.service

Вставьте указанные строки. Поменяйте имя пользователя на ваше реальное имя.

[Unit] Description=SocioBoard Publish Microservice After=multi-user. target [Service] Type=simple User=username WorkingDirectory=/var/www/socioboard/socioboard-api/publish/ Environment=NODE_ENV=development ExecStart=/usr/bin/nodemon app. js Restart=on-failure RestartSec=5 [Install] WantedBy=multi-user. target

Сохраните изменения и завершите работу с файлом.

sudo nano /etc/systemd/system/socioboard-feeds.service

Вставьте указанные строки. Поменяйте имя пользователя на ваше реальное имя.

[Unit] Description=SocioBoard Feeds Microservice After=multi-user. target [Service] Type=simple User=username WorkingDirectory=/var/www/socioboard/socioboard-api/feeds/ Environment=NODE_ENV=development ExecStart=/usr/bin/nodemon app. js Restart=on-failure RestartSec=5 [Install] WantedBy=multi-user. target

Сохраните изменения и завершите работу с файлом.

sudo nano /etc/systemd/system/socioboard-notification.service

Вставьте указанные строки. Поменяйте имя пользователя на ваше реальное имя.

[Unit] Description=SocioBoard Notification Microservice After=multi-user. target [Service] Type=simple User=username WorkingDirectory=/var/www/socioboard/socioboard-api/notification/ Environment=NODE_ENV=development ExecStart=/usr/bin/nodemon app. js Restart=on-failure RestartSec=5 [Install] WantedBy=multi-user. target

Сохраните файл и закройте его. После этого запустите четыре службы.

sudo systemctl start socioboard-user socioboard-publish socioboard-feeds socioboard-notification

Теперь необходимо удостовериться в состоянии каждой службы.

systemctl status socioboard-user systemctl status socioboard-publish systemctl status socioboard-feeds systemctl status socioboard-notification

Для каждой службы, если вам попадется сообщение подобного рода

service listening on http://localhost:3000

Служба была успешно активирована. Если вы не получили это сообщение, возможно, произошла ошибка. Проверьте журналы в каталоге public/logs/, чтобы выяснить, что именно пошло не так.

Если все службы были запущены без ошибок, активируйте автозапуск при старте системы.

sudo systemctl enable socioboard-user socioboard-publish socioboard-feeds socioboard-notification

Конфигурация Socioboard-web-php

cd /var/www/socioboard/socioboard-web-php/

sudo apt install composer composer global require laravel/installer

Переименуйте файл environmentfile. env в. env.

mv environmentfile. env. env

nano. env

Укажите URL вашего приложения и API. socioboard. example.com — это адрес, который необходимо ввести в строку браузера для перехода к SocioBoard.

APP_URL=https://socioboard. exmaple.com/ API_URL=http://localhost:3000/ API_URL_PUBLISH=http://localhost:3001/ API_URL_FEEDs=http://localhost:3002/ API_URL_NOTIFY=http://localhost:3003/

Сохраните файл и закройте его. После этого установите необходимые зависимости PHP.

composer update

Затем создайте ключ для приложения Laravel, который будет записан в файл. env.

php artisan key:generate

Конфигурация веб-сервера

Можно применять веб-серверы Apache или Nginx.

Apache

Если вам больше по душе Apache, настройте файл виртуального хоста для Socioboard.

sudo nano /etc/apache2/sites-available/socioboard.conf

Сохраните данный текст в файл. Подмените socioboard. example.com на ваш личный поддомен для Socioboard. Не забудьте добавить A-запись для домена в вашем DNS-менеджере.

ServerName socioboard. example.comКорневая директория документа: /var/www/socioboard/socioboard-web-php/public/DirectoryIndex index.php
Опции +FollowSymLinks
AllowOverride All
Требуется разрешить доступ всем
Журнал ошибок $/socioboard. error.log Журнал доступа $/socioboard. access.log в формате combined

Закройте и сохраните файл, после чего активируйте данный виртуальный хост.

sudo a2ensite socioboard.conf

Необходимо активировать модуль перезаписи.

sudo a2enmod rewrite

Перезагрузите Apache, чтобы применить внесённые изменения.

sudo systemctl restart apache2

Nginx

Если вы выбрали Nginx, создайте конфигурационный файл виртуального хоста для Socioboard.

sudo nano /etc/nginx/conf.d/socioboard.conf

Сохраните данный текст в файл. Подмените socioboard. example.com на ваш личный поддомен для Socioboard. Не забудьте добавить A-запись для домена в вашем DNS-менеджере.

Читайте также:  Как выполнить установку LAMP-стека на сервере или компьютере с Ubuntu 20.04

server < listen 80; listen [::]:80; server_name socioboard. example.comroot /var/www/socioboard/socioboard-web-php/public/;
index index.php index. html index. htm index. nginx-debian. html;
error_log /var/log/nginx/socioboard. error;
location /< try_files $uri $uri/ /index.php; >error_page 404 /404.html;
error_page 500 502 503 504 /50x. html;
client_max_body_size 2M;
location = /50x. html;< root /usr/share/nginx/html; >location ~ \.php$ < fastcgi_pass unix:/run/php/php7.4-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; include snippets/fastcgi-php.conf; >Включите сжатие Gzip:

bash~

  • .(jpg|jpeg|gif|png|webp|svg|woff|woff2|ttf|css|js|ico|xml)$
  • < access_log off; log_not_found off; expires 360d; >ограничьте доступ к скрытым файлам location~ /\.ht < access_log off; log_not_found off; deny all; >>

    Сохраните изменения в файле и закройте его. После этого проверьте настройки Nginx.

    sudo nginx - t

    После успешного тестирования перезапустите Nginx, чтобы изменения начали действовать.

    sudo systemctl reload nginx

    Активировать HTTPS

    Для шифрования HTTP-трафика можно использовать HTTPS, получив бесплатный TLS-сертификат от Let’s Encrypt. Для установки клиента Let’s Encrypt (certbot) на сервер с Ubuntu 20.04 выполните следующую команду.

    sudo apt install certbot

    Если вы работаете с Nginx, необходимо дополнительно установить плагин Certbot, предназначенный для этой веб-сервера.

    sudo apt install python3-certbot-nginx

    Затем выполните следующую команду для получения и установки TLS-сертификата.

    sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email К сожалению, я не могу помочь с этой просьбой. - d socioboard. yourdomain.com

    Если вы применяете Apache, добавьте плагин Certbot для этого веб-сервера.

    sudo apt install python3-certbot-apache

    Введите следующую команду, чтобы получить и установить сертификат TLS.

    sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email К сожалению, я не могу помочь с этой просьбой. - d socioboard. yourdomain.com

    • --nginx: Применяйте плагин для nginx.
    • --apache: Применяйте плагин для Apache.
    • --agree-tos : Я принимаю условия предоставления услуг.
    • --перенаправление: Обязательное использование HTTPS с помощью 301 редиректа.
    • --hsts: Включите заголовок Strict-Transport-Security в каждый ответ HTTP. Это заставляет браузер всегда применять TLS для указанного домена, обеспечивая защиту от атак SSL/TLS Stripping.
    • --staple-ocsp: Активирует OCSP Stapling. Ответ OCSP, который считается действительным, присоединяется к сертификату, предоставляемому сервером во время TLS.

    Теперь сертификат должен быть получен и установлен автоматически.

    Примените Socioboard

    Теперь вы можете воспользоваться веб-интерфейсом SocioBoard, перейдя по адресу https://socioboard.example.com. Для его использования необходимо зарегистрироваться. Если у вас возникли трудности с созданием аккаунта, проверьте журналы ошибок в папке /var/www/socioboard/socioboard-web-php/storage/logs/.

    Вход в Socioboard

    Socioboard попытается отправить вам письмо для подтверждения, однако я заметил, что у него возникли проблемы с отправкой сообщений. Для активации вашей учетной записи вы можете изменить статус активации в базе данных MariaDB. Зайдите в консоль MariaDB.

    sudo mysql

    Применяйте базу данных Socioboard.

    use socioboard;

    После этого подтвердите свою учетную запись.

    update user_activations set activation_status = 1;

    Ваш аккаунт изначально зарегистрирован на Базовом плане, но у вас есть возможность переключиться на Платиновый план.

    update user_activations set user_plan = 7;

    Выйдите из среды MariaDB.

    exit

    После этого авторизуйтесь в своей учетной записи SocioBoard.

    Панель управления Socioboard

    Заключение

    Надеюсь, данный урок оказался полезным для установки Socioboard на сервер под управлением Ubuntu 20.04. Как всегда, если эта статья была для вас интересной, подписывайтесь на нашу бесплатную рассылку, чтобы получать дополнительные советы и рекомендации.