Подготовка

Выполняем пункты 1.1.1, 1.2.1 на сервере КС2019

Создаем пользователя на сервере с КС2024 docker

Если установка КС2024 выполнялась под специальной УЗ (шаг 3 установки docker-compose инструкции), то следующий пункт можно пропустить

Создаем пользователя для миграции и добавляем его в группу докер:
useradd -u 1999 -G docker cddisk
Далее выполняем пункты 1.2.2.

Останавливаем ДС

Для остановки выполняем скрипт на сервере КС2024 внутри контейнера командой:
docker exec ds-app bash /usr/bin/documentserver-prepare4shutdown.sh
Или останавливаем контейнер:
docker stop ds-app
Проверяем, что файлы не открываются на редактирование.

Подключаем хранилище

Для этого в файле /etc/exports КС2019 вставим строку:
/var/www/r7-office/Data/Products/Files ip_docker_cs24/32(rw,nohide,all_squash,anonuid=1999,anongid=987,no_subtree_check)
где
  • ip_docker_cs24 — ip адрес сервера с докер версией КС24
  • anonuid=1999 — указываем 1999, если выполнялось создание нового пользователя cddisk
  • anongid=987 — указываем id группы докер
Выполняем пункт 2.2 на сервере КС2024

Настроим контейнеры

Добавляем порты rabbitmq

Откроем файл docker-compose-client.yml, расположенный в каталоге cddisk. Добавляем в конфигурацию rabbitmq порты:
rabbitmq:
  env_file:
    - .env.overrides
    - .env.defaults
  image: cddisk-rabbitmq:latest
  restart: unless-stopped
  container_name: rabbitmq
  hostname: rabbitmq
  environment:
    - RABBITMQ_DEFAULT_USER=${r7_rabbitmq_user}
    - RABBITMQ_DEFAULT_PASS=${r7_rabbitmq_pass}
  ports:
    - 5672:5672
Порт слева можно указать другой.

Добавляем файл и директорию внутрь контейнера

Файл извлекаем из контейнера командой, находясь в директории cddisk:
docker cp processing:/opt/r7-office/Processing/appsettings.json ./
или заменив ./ на путь к директории cddisk. Откроем файл appsettings.json на редактирование и изменим строку «CommunityRepository» к виду:
"ConnectionStrings": {
  "R7StorageServerUserActions": "Database=postgres;Username=postgres;Password=pg_pass;Host=postgres;Port=5432;",
  "R7StorageServer": "Database=postgres;Username=postgres;Password=pg_pass;Host=postgres;Port=5432;",
  "CommunityRepository": "Server=192.168.12.14;UserID=cddisk;Password=Password123!;Database=r7-office"
где
  • 192.168.12.14 — ip адрес сервера КС2019
  • cddisk — пользователь и его пароль, созданный в пункте 1.1.1
После в файле docker-compose-client.yml в блок processing добавляем volumes:
processing:
  env_file:
    - .env.overrides
    - .env.defaults
  image: cddisk-processing:latest
  container_name: processing
  hostname: processing
  restart: unless-stopped
  depends_on:
    postgres:
      condition: service_healthy
  volumes:
    - /mnt/cs:/mnt/cs:ro
    - ./appsettings.json:/opt/r7-office/Processing/appsettings.json
После сохранения изменений выполняем:
docker-compose -f docker-compose-client.yml up -d && docker restart ds-app
И убеждаемся, что контейнеры пересоздались и запущены Миграция КС2019 в docker КС2024

Запускаем миграцию

Для этого открываем в браузере адрес где cddisk.test21.s7-office.site — адрес диска КС2024 Ожидаем около 10-15 мин (точное время зависит от объема данных) до завершения миграции.
Была ли полезна статья?
Позвольте нам стать лучше