Настройка внешнего S3 (Simple Storage Service)
Для использования внешнего S3 необходимо обеспечить два ключевых условия:
Возможность загрузки файлов по прямой ссылке: Пользователи должны иметь возможность загружать файлы напрямую со своих рабочих мест.
Сетевая связанность: Должно быть обеспечено сетевое соединение между сервером, на котором установлена платформа, и внешним S3-хранилищем.
У пользователя должна быть либо возможность создания бакетов, либо заранее можно создать бакет в S3 с нужным названием. Ниже указаны значения названий бакетов по умолчанию.
Для подключения внешнего S3 необходимо выполнить следующие шаги:
Добавьте в файл
/var/lib/visiology/scripts/v3/env-files/ds.envследующие значения:S3StorageSettings__PublicAddress=<S3_ENDPOINT> S3StorageSettings__InternalAddress=<S3_ENDPOINT> S3StorageSettings__TemporaryBucketName=temporary S3StorageSettings__PermanentBucketName=permanent S3StorageSettings__AccessKey=<S3_ACCESS_KEY> S3StorageSettings__SecretKey=<S3_SECRET_KEY>где
S3_ENDPOINT– путь к S3.S3_ACCESS_KEYиS3_SECRET_KEY- данные для доступа к S3.При необходимости вы можете изменить имена бакетов. Если бакеты с указанными именами не существуют, система попытается создать их автоматически. Для этого предоставленная учетная запись должна иметь соответствующие права (например,
s3:CreateBucket).Добавьте в файл
/var/lib/visiology/scripts/v3/env-files/dms.envследующие значения:S3__PublicAddress=<S3_ENDPOINT> S3__InternalAddress=<S3_ENDPOINT> S3__BucketName=dev S3__AccessKey=<S3_ACCESS_KEY> S3__SecretKey=<S3_SECRET_KEY>где
S3_ENDPOINT– путь к S3.S3_ACCESS_KEYиS3_SECRET_KEY- данные для доступа к S3.
При необходимости вы можете изменить имена бакетов. Если бакеты с указанными именами не существуют, система попытается создать их автоматически. Для этого предоставленная учетная запись должна иметь соответствующие права (например,s3:CreateBucket).Добавьте в файл
/var/lib/visiology/scripts/v3/env-files/edge.envследующие значения:Modules__Transfer__S3__PublicAddress=<S3_ENDPOINT> Modules__Transfer__S3__InternalAddress=<S3_ENDPOINT> Modules__Transfer__S3__BucketName=transfer Modules__Transfer__S3__AccessKey=<S3_ACCESS_KEY> Modules__Transfer__S3__SecretKey=<S3_SECRET_KEY>где
S3_ENDPOINT– путь к S3.S3_ACCESS_KEYиS3_SECRET_KEY- данные для доступа к S3.
При необходимости вы можете изменить имена бакетов. Если бакеты с указанными именами не существуют, система попытается создать их автоматически. Для этого предоставленная учетная запись должна иметь соответствующие права (например,s3:CreateBucket).Вы можете не указывать секреты в открытом виде в
env-файлах, а перегенерировать соответствующие секреты на платформе:docker secret rm MINIO_ROOT_USER \ echo -n "YOUR_ACCESS_KEY" | docker secret create -l visiology3_minio=minio_user MINIO_ROOT_USER - docker secret rm MINIO_ROOT_PASSWORD \ echo -n "YOR_SECRET_KEY" | docker secret create -l visiology3_minio=minio_password MINIO_ROOT_PASSWORD -Перезапустите платформу, выполнив следующую команду:
/var/lib/visiology/scripts/run.sh --restart
Назначение бакетов
temporary- хранение временных файлов для экспорта.permanent- долгосрочное хранение файлов (картинки на портале, картинка виджета).dev- хранение загружаемых файлов (CSV и Excel).transfer- хранение данных для переноса между стендами.
Нужна дополнительная помощь?