Просмотр запущенных контейнеров:

docker ps

Остановка сервиса Address Book без очистки docker container и docker network:

./ecss-address-book.sh stop

Остановка сервиса Address Book с очисткой docker container и docker network:

./ecss-address-book.sh down

Запуск сервиса Address Book:

./ecss-address-book.sh up

Запуск обновления сервиса Address Book. Можно указать дополнительный параметр --version с желаемой версией:

./ecss-address-book.sh update --version 1.6.0

Перезагрузка сервиса Address Book:

./ecss-address-book.sh restart

Сервис Address Book использует два конфигурационных файла:

  1. ./address-book/stable/.env — основной файл конфигурации с настройками по умолчанию.

  2. ./address-book/stable/.env.override — файл для пользовательских настроек. Его значения заменяют настройки в основном файле .env при запуске сервиса или обновлении версии.

Для корректной работы все настройки необходимо вносить в файл .env.override. Сервис автоматически перенесёт указанные значения в основной файл .env.

В файле .env.override не должно быть строк-комментариев.


DOCKER_REPO="hub-ims.eltex-co.ru"



TAG=1.6.0
RESTART_POLICY="unless-stopped"
VOLUMES_DIR=./volumes
# SECRET_KEY_BASE=""
AUTH_TYPE=BY_ELPH_TOKEN # || BY_KEYCLOAK_JWT || API_KEY
API_SECRET_KEY="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhbGlhc19pZCI6IjExMTExMTExMTEiLCJhdWQiOiJmb29iYXIiLCJzdWIiOiIyMjIyMjIyMjIyIn0.MFxFH6PNoXxUmtXAuuTZJXXOcjwSPSzWaMatPVu5mlw"
HOST=localhost
PORT=4000
LOGGER_LEVEL="info" # Поддерживаемые уровни логирования: "emergency", "alert", "critical", "error", "warning", "notice", "info", "debug"


# ==================== НАСТРОЙКИ ACTIVE DIRECTORY (AD) ====================

# Подключение к серверу AD
AD_PORT=389 # Порт сервера AD
# AD_SERVER=example.com # Хост сервера AD
# AD_BASE=CN=Users,DC=example,DC=com # Базовый Distinguished Name (DN) для поиска пользователей и групп в AD
AD_SSL=false # Использовать ли SSL/TLS для защищенного подключения
AD_TIMEOUT=10000 # Таймаут для операций с сервером AD

# Учетная запись для подключения к AD
# AD_USER_DN=ivan.ivanov@example.com # Логин в формате user@domain или DN
# AD_PASS=example_password # Пароль для аутентификации в AD.

# AD_BASE_OU="Имя компании" # Название базовой организационной единицы (OU - Organizational Unit) верхнего уровня.


# ============================ НАСТРОЙКИ LDAP =============================

# Подключение к серверу LDAP
LDAP_PORT=389 # Порт сервера LDAP
# LDAP_SERVER=example.com # Хост или доменное имя сервера LDAP.
# LDAP_BASE=dc=example,dc=com # Базовый DN (Distinguished Name), с которого начинается поиск пользователей и групп в LDAP
LDAP_SSL=false # Использовать ли SSL для защищенного подключения к серверу LDAP
LDAP_TIMEOUT=10000 # Таймаут для операций с сервером LDAP, задается в миллисекундах.

# Учетная запись для подключения к AD
# LDAP_USER_DN=cn=admin,dc=example,dc=com # Полный Distinguished Name (DN) администратора LDAP-сервера, необходимый для аутентификации
# LDAP_PASS=example_password # Пароль администратора для доступа к серверу LDAP

# LDAP_BASE_OU="Example Inc." # Название базовой организационной единицы (OU - Organizational Unit) верхнего уровня. Группа, у которой нет ни ou ни uid

LDAP_AUTO_UPDATE_ENABLE=FALSE # Включить или отключить автоматическое обновление данных из LDAP
LDAP_AUTO_UPDATE_TIMEOUT=86400000 # Обновление раз в день, время указывается в миллисекундах


# ============================== НАСТРОЙКИ CSV ============================

CSV_HEADERS_SETTINGS="with_headers" # || no_headers # Используются ли заголовки в CSV
CSV_BASE_OU="Имя компании" # Название базовой организационной единицы верхнего уровня.


# ============================== НАСТРОЙКИ MYSQL ============================

# MYSQL_USERNAME="example_user" # Логин
# MYSQL_PASSWORD="example_password" # Пароль
# MYSQL_HOST="1.1.1.1" # Хост или MySQL
MYSQL_DATABASE="ecss_address_book" # Имя БД с данными для адресной книги
MYSQL_PORT="3306" # Название базовой организационной единицы верхнего уровня.
MYSQL_BASE_OU="ООО Ин-софт"


# =========================== НАСТРОЙКИ HTTP TRMINAL ========================

HTTP_TERMINAL_QUERY_LIMIT="2000" # Максимальное количество выгружаемых за раз пользователей
# SSW_SERVER="1.1.1.1" # Хост или доменное имя сервера SSW.
SSW_PORT=9999 # Порт SSW.
# SSW_PROTOCOL="http" # Протокол на котором работает SSW

# SSW_USER="username" # Юзернейм администратора
# SSW_PASSWORD="example_password" # Пароль администратора
# SSW_DOMAIN_NAME="example.domain" # Имя домена SSW

HTTP_TERMINAL_BASE_OU="Имя компании" # Название базовой организационной единицы верхнего уровня.


# ============================ НАСТРОЙКИ MONGODB =========================
MONGO_TAG=6.0-${TAG}
DATABASE_SEEDS=mongo1:27017
DATABASE_TIMEOUT=60000
DATABASE_IDLE_INTERVAL=1000
DATABASE_QUEUE_TARGET=5000
DATABASE_NAME=address-book

FAVORITES_LIMIT=50 # Лимит избранных контактов пользователя
FIELDS_TO_INDEX="/etc/ecss-address-book/fields_to_index.json" # Поля для индексирования для запроса с FindLike
MAPPERS_PATH="/etc/ecss-address-book/mappers.json" # Мапперы
MAPPER_FILE_NAME="mappers.json"
FIELDS_TO_INDEX_FILE_NAME="fields_to_index.json"


# ======================= НАСТРОЙКИ KEYCLOAK =======================

KEYCLOAK_ENABLED=TRUE # В случае отключения будет невозможна работа с сервисом с авторизацией типа BY_KEYCLOAK_TICKET и выгрузка контактов из КК

KEYCLOAK_INIT_TAG=26.0.0-${TAG}
KEYCLOAK_CLIENT_SECRET="Wek1sbYRt2wZkPCpJooWNDb40ulQPNOX"
KEYCLOAK_HOST=${HOST}
KEYCLOAK_PORT="8080"
KEYCLOAK_PROTOCOL="http" # или https
KEYCLOAK_FRONTEND_URL="${KEYCLOAK_PROTOCOL}://${KEYCLOAK_HOST}:${KEYCLOAK_PORT}/auth/"
KEYCLOAK_USER="admin"
KEYCLOAK_PASSWORD="admin"
KEYCLOAK_REALM="ecss"
KEYCLOAK_ADDRESS_BOOK_CLIENT_ID="cffc68d7-63c8-41b4-9692-cfba1872757c"
KEYCLOAK_WEB_CLIENT_ID="16665555-d4e7-4efe-9d9f-ceaa770ec9f0"
KEYCLOAK_GROUP_NAME="urn:aup:groups:admins"
KEYCLOAK_CLIENT_SETTINGS_FILE_NAME="client.json"
KEYCLOAK_WEB_CLIENT_SETTINGS_FILE_NAME="web.json"
KEYCLOAK_CLIENT_AUTHZ_SETTINGS_FILE_NAME="authz.json"
KEYCLOAK_LOGLEVEL="INFO"
KEYCLOAK_MANAGEMENT_CLIENT_ID="15b2e368-4856-4f8b-8145-ea1d8a6f6e9a"
KEYCLOAK_MANAGE_USERS_MANAGEMENT_CLIENT_ROLE_ID="0f58a9ba-36cf-4ebd-854b-46a8f273f83d"
KEYCLOAK_MANAGE_USERS_MANAGEMENT_CLIENT_ROLE_NAME="manage-users"
KEYCLOAK_AUTO_UPDATE_ENABLE="FALSE"
KEYCLOAK_AUTO_UPDATE_TIMEOUT="1440000"
KEYCLOAK_AUTH_PATH="FALSE" # или TRUE. Определяет, нужно ли использовать /auth в URL
KEYCLOAK_TOKEN_INTROSPECT_MODE="local_jwks" # или remote_jwks
KEYCLOAK_IDP_AVAILABLE_METHOD="health_check" # или keep_alive
KEYCLOAK_HEALTH_CHECK_WORKER_PORT=9000
KEYCLOAK_JWKS_URI="${KEYCLOAK_PROTOCOL}://${KEYCLOAK_HOST}:${KEYCLOAK_PORT}/realms/${KEYCLOAK_REALM}/protocol/openid-connect/certs"


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

./ecss-address-book.sh up

В разделе «Настройка режима авторизации» приведены примеры настройки .env.override и описание разных режимов авторизации. 

  • Нет меток