Перейти к основному контенту

Установка ПО на сервер црм


Этапы разворота црм:

  1. Заходим на сервер при помощи ssh
    ssh root@server_ip

  2. Переходим к этапу создания нужного нам пользователя (можно пропустить, если имеется уже подходящий пользователь)

    1.  adduser ansible (Вписываем команду создания пользователя)

    2.  Далее заполняем данные, которые спрашивает с нас консоль:

    3. Пользователь создан, нужно дать ему необходимые права.
      usermod -aG sudo ansible

    4. Проверяем результат, должен быть примерно таким:

  3. Приступим к следующему этапу (скачивание гит проекта). 

    1. Перейдите в удобное местоположение на СВОЁМ компьютере, с которого будете производить удаленную настройку сервера.
      Для меня это: cd ~/uploadCrm/


  1. Проект уже скачан и находится у нас! Теперь приступим к его настройке под нас. 

    1. Переменные в этом файле делятся на 2 категории: Те, которые используются в сценарии плэйбука и те, которые содержат название нужных пакетов для работы сценария плэйбука на сервере. Опишем те, которые нужно изменить:

    2.  USER  - имя пользователе на сервере, который будет использоваться нашим сценарием playbook.
      (В нашем случае это ansible)

    3.  type_connect - команда с помощью которой мы будем менять подключение от обычного пользователя ansible к пользователю root. (Обычно используется sudo или su)

    1. TZ - часовой пояс, который актуален для сервера.
      В нашем случае "Europe/Moscow"

    2.  ADRESS_CRM - доменное имя, которое будет вести на нашу CRM.  (На том же сервере что и TD)

    3. ADRESS_TD - доменное имя, которое будет вести на нашу TD.

    4. IP_LOCAL - локальный (серый) адрес нашего сервера. 

    5. IP_GLOBAL - глобальный (белый) адрес нашего сервера. 

    6. TOK - уникальное значение, нужное для формирование уникальный токенов.
      TOK должен быть в скобках “ ‘ ‘ “, их удалять не нужно. 

    7. SIP_SERVER_DOMAIN - доменное имя, которое будет вести на наш SIP сервер. (отделен от CRM и TD)

    8.  SIP_SERVER_PORT - порт SIP сервера, на неизменяемое значение. 

    9.  SIP_SERVER_USER_PORT - также порт SIP сервера, неизменяемое значение.

    10.  SIP_SERVER_PROTO - тип соединения с SIP серверов, неизменяемое значение. 

    1. PASS - пароль администратора для входа на сайт по логину admin

    2. PASS_HASH - захешированный выше пароль, можно сделать с помощью https://bcrypt-generator.com/
      HASH должен быть в скобках “ ‘ ‘ “, их удалять не нужно. 

    3. BUYER_ID - id номер покупателя, его стоит уточнить у сотрудников техподдержки Интерсвязь

    4. NAME_COMPANY - имя компании.

    1. Начнем с переменных, перейдем в папку, которая содержит переменные нашего будущего проекта. (В дальнейшем будут появляться новые переменные)
      cd ansible_crm/environments/

    2. Начнем с самых простых переменных, переменных ansible, которые требуются для работы playbook.
      nano env_ansible.yml

    3. Перейдем к глобальным переменным, доступным из всего проекта и опишем их.
      nano env_global.yml

    4. Перейдем к переменным, которые требуются для баз данных mysql:
      nano env_mysql.yml

  2. Теперь займемся переменными. У Вас должен быть собственный файл с сертификатами на выбранные Вами доменные имена, которые нужно поместить в папку ssl, которая находится в том же проекте что и сценарии playbook. Пример:
    - crm.testing-pl.is74.ru.key

- crm.testing-pl.is74.ru.pem

- td.testing-pl.is74.ru.key

- td.testing-pl.is74.ru.pem

  1. С переменными закончили! Теперь можно запускать сценарий. (На компьютере, где запускается сценарий должен быть установлен ansible (версия > 2.9.19 )).

    1. Начнем с команды установки нужных для работы плэйбука параметров:
      ansible-playbook install.yml -i hosts.yml -kK 

Если появилась неполадка, то попробуйте повторный запуск.

  1. Если завершилось без неполадок, то запускаем команду по настройке установленных конфигураций:

ansible-playbook permission.yml -i hosts.yml -kK

  1. После окончания выполнения команды дайте ~ 8 минут контейнерам произвести начальную настройку. Далее команда, которая будет заниматься вставкой нужных данных в бд:
    ansible-playbook datainput.yml -i hosts.yml -kK

  1. После этого проверьте работу Вашего сайта  зайдя в браузере по доменному имени через несколько минут. 

  2. Проверить что все миграции выполнены

в контейнере crm выполнить:

./yii migrate

./yii migrate-td

./yii migrate-rbac

./yii migrate-td-rbac

./yii migrate-fias

./yii migrate-history

./yii migrate-ch


(Если при заливки ФИАС возникли проблемы с наличием таблиц в базе то необходимо выполнить migrate-fias/up )