Nextcloud
Pré-requisitos
Info
Antes de começar é necessário que você tenha acesso aos parâmetros de uso da API.
Esse manual mostra como acessá-los: API Big File
Info
O Big File é recomendado como serviço de repositório de arquivos, caso deseja utilizar o Big File como um servidor de arquivos o mesmo não terá um bom desempenho pois o download e upload são um pouco mais lentos do que um servidor de arquivos.
Etapa 1: S3 como armazenamento primário no NextCloud (escalável, solução corporativa)
- Só pode ser configurado durante o processo inicial de instalação do NextCloud, portanto, se você já possui uma instância do NextCloud, precisará criar uma nova instância.
- Crie um novo bucket no BigFile, certifique-se de não criar nenhum arquivo ou pasta no bucket por meio da interface S3, pois os dados serão completamente gerenciados pelo NextCloud.
Antes de instalar o NextCloud pela primeira vez, navegue até a pasta
config
no diretório do aplicativo NextCloud (por exemplo, se o diretório do NextCloud estiver/var/www/nextcloud/
, seria/var/www/nextcloud/config/
). Em seguida, crie um arquivo chamadostorage.config.php
.<?php $CONFIG = [ 'objectstore' => [ 'class' => 'OC\\Files\\ObjectStore\\S3', 'arguments' => [ 'bucket' => 'nextcloud', 'autocreate' => true, 'key' => 'xxxxxxxxxxxxxxxxxxxxx12fbb30c', 'secret' => 'xxxxxxxxxxxxxxxxxxxe4d10e1b5e7', 'hostname' => 'bigfile.brascloud.com.br', 'port' => 443, 'use_ssl' => true, 'region' => 'BR', 'use_path_style'=>true ], ], ];
- Depois de concluir a instalação do NextCloud por meio do assistente da Web, o esqueleto do diretório inicial da conta do usuário admin será preenchido no BigFile. A partir deste momento, os dados enviados por qualquer usuário do NextCloud (para qualquer pasta) serão automaticamente armazenados no bucket e no terminal S3 especificados no arquivo de configuração.
- Observe que, ao usar o armazenamento compatível com S3 como back-end principal do NextCloud, os arquivos são armazenados separadamente dos metadados (nomes de arquivos e pastas), o que significa que você não poderá navegar ou interagir com os dados pelo S3 diretamente (fora do NextCloud).
Ao usar um armazenamento de objetos como armazenamento primário, o bloqueio de arquivo transacional deve ser desativado adicionando esta linha abaixo no
config.php
);
'filelocking.enabled' => false,
Etapa 2: Armazenamento externo
- O suporte ao armazenamento externo é fornecido como um aplicativo padrão com o NextCloud, ele simplesmente precisa ser ativado por um usuário administrador, navegando até Aplicativos no menu suspenso. Depois de habilitado em Configurações, você terá a opção de montar Armazenamentos externos em Administração .
- Se "/" for escolhido como o nome da pasta , qualquer usuário do NextCloud que tenha acesso ao armazenamento externo fará o upload para o back-end compatível com S3 por padrão. Se esse não for o comportamento desejado, o bucket deve ser montado com um nome de pasta específico para que os usuários não precisem acessar a montagem na área External Storages do painel do NextCloud.
- Para que seja feita a conexão da Nextcloud com o BigFile com o usuário Admin clique em Configurações > Administração >Armazenamentos externos.
- Selecione Armazenamento externo > Amazon S3 e insira os dados como o exemplo abaixo.
- Visualise a nova pasta no painel do usuário.
- Os nomes de arquivos e diretórios são visíveis no painel do BigFile.
Info
- Embora você veja uma mensagem de aviso na seção Administração > Visão geral do painel NextCloud, é seguro ignorar essa mensagem - pois a API do serviço de armazenamento de objetos deve lidar com a situação normalmente .
- É necessário que você proteja o banco de dados MySQL ou Postgres do NextCloud com cautela, pois os metadados armazenados lá são necessários para reconstruir a estrutura de arquivos e pastas dos dados que qualquer usuário armazena no NextCloud. Considere configurar a replicação do banco de dados para garantir que você sempre tenha uma cópia de trabalho do banco de dados NextCloud - caso seu servidor de banco de dados primário falhe por qualquer motivo.
Exemplo de como implantar o Container com SSL/HTTPs https://github.com/ReinerNippes/nextcloud_on_docker
Próximos passos: