Инструкция https://its.1c.ru/db/metod8dev/content/5988/hdoc немного переделанная под себя.
С официального сайта 1С скачиваем необходимый дистрибутив:
- Сервер взаимодействия для Linux (В моем случаем 1c_cs_27.0.37_linux_x86_64.tar.gz)
- PostgreSQL, либо можно использовать PostgreSQL PRO (будем использовать его)
- Liberica 11 Full JDK — Инструкция по установке
Устанавливаем PostgreSQL PRO 17
sh pgpro-repo-add.sh
apt-get install postgrespro-1c-17
Переключаемся на пользователя postgres, запускаем интерактивный режим postgreSQL, создаем роль
psql
CREATE ROLE cs_user WITH
LOGIN
SUPERUSER
INHERIT
CREATEDB
CREATEROLE
REPLICATION
PASSWORD 'P@$$w00rd';
Создаем базу данных
postgres=# \c cs_db
postgres=# CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
postgres=# \q
$ exit
Устанавливаем Liberica JDK, проверяем версию
java -version
Распаковываем и устанавливаем сервер взаимодействия
./1ce-installer-cli install --ignore-signature-warnings
Добавляем переменные в окружение.
export JAVA_HOME=/usr/lib/jvm/bellsoft-java11-full-amd64
Установка сервера взаимодействия
mkdir -p /var/cs/1c_cs_instance
chown 1c_cs_user:1c_cs_user /var/cs/1c_cs_instance
ring cs instance create --dir /var/cs/1c_cs_instance --owner 1c_cs_user
ring cs --instance 1c_cs_instance service create --username 1c_cs_user --java-home $JAVA_HOME --stopped
Инстанс Hazelcast
mkdir -p /var/cs/1c_hc_instance
chown 1c_hc_user:1c_hc_user /var/cs/1c_hc_instance
ring hazelcast instance create --dir /var/cs/1c_hc_instance --owner 1c_hc_user
ring hazelcast --instance 1c_hc_instance service create --username 1c_hc_user --java-home $JAVA_HOME --stopped
Инстанс Elasticsearch
sudo mkdir -p /var/cs/1c_elastic_instance
chown 1c_elastic_user:1c_elastic_user /var/cs/1c_elastic_instance
ring elasticsearch instance create --dir /var/cs/1c_elastic_instance --owner 1c_elastic_user
ring elasticsearch --instance 1c_elastic_instance service create --username 1c_elastic_user --java-home $JAVA_HOME --stopped
Настройка JDBC
ring cs --instance 1c_cs_instance jdbc pools --name common set-params --username cs_user
ring cs --instance 1c_cs_instance jdbc pools --name common set-params --password P@$$w00rd
ring cs --instance 1c_cs_instance jdbc pools --name privileged set-params --url jdbc:postgresql://localhost:5432/cs_db?currentSchema=public
ring cs --instance 1c_cs_instance jdbc pools --name privileged set-params --username cs_user
ring cs --instance 1c_cs_instance jdbc pools --name privileged set-params --password P@$$w00rd
Настройка WebSocket (192.168.0.6 адрес этого сервера):
ring cs --instance 1c_cs_instance websocket set-params --port 9090
Запуск
ring elasticsearch --instance 1c_elastic_instance service start
ring cs --instance 1c_cs_instance service start
Проверить, что все запустилось:
Получаем JSON ответ
При необходимости смотреть логи:
/var/cs/hc_instance/logs/
/var/cs/elastic_instance/logs/
Инициализация базы данных:
Успешный ответ
Для обмена файлами нужно поднять S3 хранилище Minio
Качаем и устанавливаем
dpkg -i minio_20250723155402.0.0_amd64.deb
Создаем директорию хранилища файлов
useradd minio-user
chown minio-user:minio-user /var/cs/minio
Создаем конфиг файл
Добавляем строки
MINIO_ACCESS_KEY=cs_minio
MINIO_SECRET_KEY=cs_minio123
Качаем minio.service в /lib/systemd/system/
curl -O https://raw.githubusercontent.com/minio/minio-service/master/linux-systemd/minio.service
Запуск
systemctl status minio.service
systemctl enable minio.service
В браузере перейдите по ссылке:
http://IP-адрес-сервера-хранилища:9000
Создайте новое хранилище, например cs-bucket
Логин: значение переменной MINIO_ACCESS_KEY,
Пароль: значение переменной MINIO_SECRET_KEY
Сконфигурим наше хранилище
Поля в -d описывают конфигурацию хранилища:
Поле | Значение в примере | Описание |
---|---|---|
apiType | «AMAZON» | Тип API (Amazon S3 или совместимое, например, MinIO). |
storageType | «DEFAULT» | Тип хранилища (возможно, стандартное или кастомное). |
baseUrl | «http://192.168.0.6:9000» | Базовый URL хранилища (адрес MinIO/S3). |
containerUrl | «http://192.168.0.6:9000/${container_name}» | URL контейнера (бакета) с подстановкой имени. |
containerName | «cs-bucket» | Имя бакета (контейнера). |
region | «eu-west-1» | Регион хранилища (для S3). |
accessKeyId | «cs_minio» | Ключ доступа (логин). |
secretKey | «cs_minio123» | Секретный ключ (пароль). |
signatureVersion | «V2» | Версия подписи запросов (V2 или V4). |
uploadLimit | 1073741824 (1 ГБ) | Лимит загрузки в байтах. |
downloadLimit | 1073741824 (1 ГБ) | Лимит скачивания в байтах. |
fileSizeLimit | 104857600 (100 МБ) | Максимальный размер файла. |
bytesToKeep | 104857600 (100 МБ) | Сколько данных хранить (для кеша/ротации). |
daysToKeep | 0 | Сколько дней хранить данные. |
pathStyleAccessEnabled | true | Использовать путь в URL (например, http://minio/bucket/file вместо http://bucket.minio/file). |
Скачиваем обработку для подключения сервера взаимодействия https://releases.1c.ru/version_files?nick=CollaborationSystem&ver=27.0.37
Открываем эту обратботку
Регистрируем сервер