﻿# Установить ELMA Cortex с использованием Docker Compose

> [HTML Version](cortex-docker-compose.html)

При установке **ELMA Cortex** с использованием Docker Compose все компоненты располагаются на одном сервере в виде контейнеров. Этот вариант подходит только для тестового окружения, т. к. не предусматривает масштабирование микросервисов. Для установки используется подключение к интернету.

Предварительно убедитесь, что:

1. Установлены [Docker](https://docs.docker.com/engine/install/) и [Docker Compose](https://docs.docker.com/compose/).

2. Вы [загрузили установочные файлы](cortex-download-installer.md).

3. Вы [настроили переменные окружения](cortex-environment-variables.md).

Обратите внимание:

- для работы MongoDB в режиме репликации требуется ключ для внутренней аутентификации узлов базы данных. Он [создаётся автоматически в процессе установки](#mongodb-key);

- если вы используете самоподписанные сертификаты, после установки [экспортируйте корневой сертификат](#caddy), чтобы добавить его в список доверенных.

## Установка ELMA Cortex

Для установки **ELMA Cortex** с использованием Docker Compose:

1. Запустите скрипт установки:

````
chmod +x install.sh  
./install.sh

````
Если вы используете несколько копий **ELMA Cortex**, и нужно указать [название проекта](cortex-environment-variables.md#project-name), используйте параметр:

````
./install.sh --project-name my-cortex

2. ````
После выполнения скрипта `install.sh` некоторым сервисам может потребоваться несколько минут для полного запуска. Чтобы убедиться, что сервисы готовы к работе, выполните команду:

````
docker ps

3. ````
Дождитесь в логах появления сообщения “Application startup complete”.

### Создание ключа для MongoDB

При установке **ELMA Cortex** в скрипте `install.sh` автоматически генерируется ключ аутентификации, который используется для репликации встроенного сервиса MongoDB. К файлу автоматически назначаются права доступа.

Если нужно создать новый ключ вручную, выполните команды:

````
openssl rand -base64 756 > mongo.keyfile  
  
sudo chown 999:999 mongo.keyfile  
sudo chmod 400 mongo.keyfile

### ````
Экспорт корневого сертификата Caddy

Если в качестве [режима управления TLS‑сертификатами](cortex-tls-settings.md) вы выбрали **Internal**, экспортируйте корневой сертификат Caddy, чтобы добавить его в список доверенных:

````
docker exec \$(docker ps -q -f name=caddy) cat /data/caddy/pki/authorities/local/root.crt > caddy\_root.crt

````
Установка **ELMA Cortex** завершена. Теперь вы можете перейти к [настройке интеграции с ELMA365](cortex-integration-solution.md).

При возникновении неполадок вы можете [провести диагностику](cortex-troubleshooting.md).

## Обновление ELMA Cortex

При выпуске новой версии **ELMA Cortex** сохраните текущую конфигурацию и выполните обновление. Подробнее читайте в статье [«Обновить ELMA Cortex при использовании Docker Compose»](update-cortex-docker-compose.md).

## Удаление ELMA Cortex

Шаги удаления **ELMA Cortex** описаны в статье [«Удалить ELMA Cortex при использовании Docker Compose»](delete-cortex-docker-compose.md).