Перейти к содержанию

Восстановление резервной копии

Процедура восстановления симметрична резервному копированию. Предполагается, что архивы конфигурации и volumes созданы по инструкции из раздела «Docker Compose».

Восстановление из backup

  1. Перейдите в каталог установки:

    cd /opt/appsec-registry
    
  2. Остановите контейнеры:

    docker compose -f docker-compose.yaml --env-file .env stop
    
  3. Восстановите конфигурацию и секреты из архива (.env, лицензия, nginx/, tls/, certs/, s3-config.json и др.):

    sudo tar -xzf registry-config-YYYY-MM-DD.tar.gz -C /opt/appsec-registry
    

    Убедитесь, что на месте файлы из структуры каталога: .env, registry-repo-license.lic, nginx/default.conf и т.д.

  4. Восстановите данные Docker volumes. Имена volumes для /opt/appsec-registry:

    • appsec-registry_postgres_data
    • appsec-registry_seaweedfs_data
    • appsec-registry_registry_data

    Пример для PostgreSQL:

    docker run --rm \
      -v appsec-registry_postgres_data:/data \
      -v $(pwd):/backup \
      alpine sh -c "rm -rf /data/* && tar -xzf /backup/postgres-data-YYYY-MM-DD.tar.gz -C /data"
    

    Аналогично восстановите seaweedfs-data-*.tar.gz и registry-data-*.tar.gz в соответствующие volumes.

    Список volumes: docker volume ls | grep appsec-registry

  5. Запустите сервисы:

    docker compose -f docker-compose.yaml --env-file .env up -d
    
  6. Проверьте доступность:

    • UI: http://<host> или https://<host> (в зависимости от TLS в .env);
    • Registry API: http://<host>:8081.

    Статус контейнеров: docker compose -f docker-compose.yaml --env-file .env ps

Полная переустановка

Если восстановление не требуется и нужно развернуть систему заново (например, сменились учётные данные PostgreSQL в volume), удалите volumes и запустите мастер установки — см. типовые проблемы:

cd /opt/appsec-registry
docker compose -f docker-compose.yaml --env-file .env down -v
./install.sh

Потеря данных

Команда down -v удаляет все данные в volumes. Используйте только при осознанной переустановке или если резервная копия уже сохранена.

Kubernetes