Часто задаваемые вопросы#

Список основных вопросов, возникающих в процессе установки и эксплуатации приложения.

Как настроить восстановление работоспособности приложения при сбое?#

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

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

sudo systemctl enable docker

Как сбросить данные неудачной установки или удалить приложение?#

Для удаления данных и остановки всех сервисов приложения перейдите в директорию с установщиком и воспользуйтесь командой:

sudo python3 script/uninstall.py

Внимание

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

Как обновить сертификат?#

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

Обновить сертификаты на хостовом веб-сервере:

sudo nginx -t && sudo nginx -s reload

Обновить сертификаты в контейнерах:

for container in $(sudo docker ps -q --filter "name=nginx"); do sudo docker exec $container sh -c "nginx -t && nginx -s reload"; done;

Как изменить IP-адрес в настройках приложения и базе данных?#

В директории установщика onpremise-installer найдите файл configs/global.yaml. Откройте его любым текстовым редактором и укажите новый IP-адрес для параметра host_ip:

host_ip: "<Новый IP адрес вашего сервера>"

Выполните команду обновления в директории установщика:

sudo python3 script/update.py

Выполните команду для обновления IP-адреса в базе данных контейнера php-monolith, подставив новый IP-адрес:

sudo docker exec -it $(sudo docker ps | grep php-monolith | awk '{print $1}') bash -c 'mysql -h"$MYSQL_HOST" -p"$MYSQL_ROOT_PASS" -D pivot_company_service --skip-ssl -e "UPDATE domino_registry SET database_host = '\''<Новый IP адрес>'\'', code_host = '\''<Новый IP адрес>'\'';"'

Примечание

В двух примерах ниже указан путь /home/compass, который является значением по умолчанию. Если ваш путь отличается, уточните его в параметре root_mount_path в файле configs/global.yaml и замените в командах соответствующие значения.

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

sed -i 's/<Старый IP адрес>/<Новый IP адрес>/g' /home/compass/company_configs/d1_domino/*

Обновите timestamp в конфигурационных файлах командой:

sed -i "s/[0-9]\{10\}/$(date +%s)/" /home/compass/company_configs/d1_domino/.timestamp.json && sed -i "s/[0-9]\{10\}/$(date +%s)/" /home/compass/company_configs/.timestamp.json

Перезапустите микросервисы, используя следующую команду:

for service in $(sudo docker service ls | grep go- | awk '{print $1}'); do sudo docker service update --force -d $service; done;

Как изменить максимально разрешенный размер загружаемого файла?#

Начиная с версии сервера 5.2.0, в Compass появилась возможность настраивать максимальный размер файла, разрешённого для загрузки. Для этого необходимо изменить соответствующий параметр в конфигурационном файле configs/team.yaml.

Внимание

Для использования функционала клиентские приложения должны быть обновлены до минимальных версий с его поддержкой:

  • Desktop: 5.14.3

  • iOS: 5.19.0

  • Android: 5.17.0

# Ограничение размера загружаемых файлов в мегабайтах (диапазон значений от 20 до 2048)
max_file_size_mb: 2048

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

sudo python3 script/update.py

Как отобразить руководителя в карточке сотрудника (LDAP)?#

Чтобы при авторизации пользователя через LDAP автоматически отображалась информация о его руководителе (например, ФИО), необходимо настроить соответствующее сопоставление LDAP-атрибутов в конфигурационном файле auth.yaml.

Откройте конфигурационный файл auth.yaml и заполните параметр sso.compass_mapping.bio следующим значением:

sso.compass_mapping.bio: "[[manager:distinguishedName='{manager}']] Руководитель: {manager=>displayName}"
  • [[manager:distinguishedName='{manager}']] — устанавливает связь между текущим пользователем и другим объектом в LDAP по заданному атрибуту;

    • manager — имя ключа, используемого для обращения к атрибутам найденного в LDAP объекта (например, руководителя);

    • distinguishedName — атрибут, по значению которого выполняется поиск соответствующего объекта;

    • '{manager}' — значение атрибута у текущего пользователя, используемое в качестве параметра для поиска в LDAP;

  • {manager=>displayName} — подставляет значение атрибута displayName у найденного объекта (руководителя) и отображает его в карточке пользователя. Дополнительно можно использовать другие атрибуты, например: {manager=>mail}.

Выполните обновление серверной части для применения изменений.

sudo python3 script/update.py

Как настроить автоматическую синхронизацию данных из LDAP в карточку пользователя Compass?#

Начиная с версии сервера 6.0.1, в Compass появилась возможность автоматически синхронизировать данные пользователей из LDAP. Для активации данной функции откройте конфигурационный файл configs/auth.yaml и установите параметр:

ldap.profile_update_enabled: true

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

ldap.profile_update_interval: "5m"

Для применения изменений, внесённых в конфигурационный файл, выполните обновление серверной части:

sudo python3 script/update.py

Если LDAP-данные сотрудников были изменены до активации синхронизации, выполните команду из директории установщика, чтобы принудительно синхронизировать их с приложением.

sudo python3 script/update_user_profile_by_ldap.py

Как настроить отдельный метод авторизации для гостей?#

Начиная с версии 6.0.4 появилась возможность задать отдельный способ авторизации для пользователей с гостевым доступом. Настройка производится в конфигурационном файле configs/auth.yaml:

available_guest_methods: ["phone_number", "mail", "sso"]

Выберите и настройте подходящий тип авторизации для гостей в соответствии с инструкциями из раздела: «Настройка сервисов авторизации».

После внесения изменений необходимо выполнить обновление серверной части:

sudo python3 script/update.py

Напишите нам в пространстве поддержки On-premise, Telegram или на почту support@getcompass.ru, чтобы получить индивидуальную демонстрацию функционала и помощь по вопросам интеграции мессенджера в вашей компании.