Войти в IT
S3 объектное хранилище для некоторых задач довольно удобно, подключить его к Nextcloud можно многими путями, в этой статье рассмотрим 2 варианта
Для начала хранилище нужно зарегистрировать
Переходим в console.cloud.yandex.ru (естественно аккаунт яндекса должен быть) и добавляем новый сервис Object Storage
После чего сверху справа нажимаем Создать бакет
Задаем имя, выбираем необходимый объем и т.д., стоит отметить что первый гигабайт можно считать бесплатным, т.е. выбрав объем 1гб в стандартном хранилище средства взиматься не будут.
Далее создаем сервисный аккаунт, он нам понадобится в для подключения к S3
Задаем понятное имя и в качестве роли выберем Editor
После создание нам сгенерируется ключ и секрет, его сохраняем в удобное для себя место, т.к. в дальнейшем его узнать будет нельзя.
На этом создание хранилища завершено
В зависимости от задачи и пожеланий к Nextcloud хранилище можно подключить как основной каталог хранения, т.е. все пользовательские файлы в Nextcloud будут храниться в S3 хранилище
Первым делом создаем новую корневую директорию для данных:
sudo mkdir /data/nextcloud-data
Переводим Nextcloud в режим обслуживания:
sudo -u
www-data php /srv/nextcloud/occ maintenance:mode –on
Переносим данные и рекурсивно назначаем права:
sudo mv
/srv/nextcloud/data data/nextcloud-data
sudo chown
-R www-data:www-data /data/nextcloud-data/data
Далее необходимо исправить путь к datadirectory в конфигурационном файле и задать параметры подключения к S3, примерное содержание файла
sudo nano
/srv/nextcloud/config/config.php
<?php
$CONFIG = array (
…
),
‘datadirectory’ => ‘data/nextcloud-data/’,
…
),
‘default_phone_region’ => ‘RU’,
‘objectstore’ =>
array (
‘class’ => ‘\\OC\\Files\\ObjectStore\\S3’,
‘arguments’ =>
array (
‘bucket’ => ‘tests3’,
‘autocreate’ => true,
‘key’ => ‘Ключ сервисного аккаунта’,
‘secret’ => ‘Секрет сервисного аккаунта’,
‘hostname’ => ‘storage.yandexcloud.net’,
‘port’ => 443,
‘use_ssl’ => true,
‘region’ => ‘optional’,
‘use_path_style’ => true,
),
),
…
);
Отключаем режим обслуживания:
sudo -u
www-data php /srv/nextcloud/occ maintenance:mode –off