- Home
- Docs
- Instalação e configuração
- Desenvolvedor
- Versão Linux
- Configurando o servidor multilocatário
Configurando o servidor multilocatário
Configurando o servidor multilocatário
A arquitetura multilocatária permite que uma única instância do ONLYOFFICE Docs atenda a múltiplos clientes (locatários) de forma isolada.
-
Instale o servidor Developer Edition
Uma licença válida de multi-tenancy é necessária para habilitar o modo multilocatário.
Entre em contato com seu assistente de vendas para solicitar esta licença.
Registre o produto seguindo as instruções fornecidas.
- Abra o arquivo de configuração
local.jsone defina o campo baseDir para o caminho da pasta que contém as configurações do locatário. Recomendamos usar o valor/var/www/onlyoffice/Data/tenants. - No
local.json, defina o campo baseDomain para o domínio de segundo nível que servirá como domínio base para todos os seus locatários. -
Estatísticas da licença principal são coletadas em um locatário padrão.
-
O nome do locatário padrão é especificado no campo defaultTenant dentro de
defaultTenant.Você não pode criar outro locatário com este nome.
- Solicitações ao
baseDomainque não especificam um locatário são automaticamente roteadas para o locatário padrão. - O locatário padrão não requer configuração extra. No entanto, solicitações a este locatário são assinadas usando um segredo definido no arquivo
local.json. - Visualize as estatísticas na página info do locatário padrão.
-
O nome do locatário padrão é especificado no campo defaultTenant dentro de
Adicionando um novo locatário
-
Para adicionar um novo locatário:
- Crie uma nova pasta dentro do diretório
baseDirno servidor. -
O nome do locatário será formado usando o nome da pasta e o
baseDomain(por exemplo, se a pasta se chamartenant1e obaseDomainfor example.com, o nome do locatário serátenant1.example.com).Certifique-se de que esta pasta seja criada no sistema de arquivos onde reside o
default.json.
Dentro de cada pasta de locatário, inclua os dois arquivos obrigatórios:
default.json:"tenants": { "baseDir": "/var/www/onlyoffice/Data/tenants", "baseDomain": "meudominio.exemplo", "filenameConfig": "config.json", "filenameSecret": "secret.key", "filenameLicense": "license.lic", "defaultTenant": "localhost", "cache": { "stdTTL": 300, "checkperiod": 60, "useClones": false }Implemente um arquivo
secret.keypara cada locatário para garantir isolamento e segurança. Se ausente, o segredo do locatário principal será usado. Se um segredo JWT for especificado, o doconfig.jsonterá precedência.Estrutura no sistema de arquivos:
root@3694c287928a:/var/www/onlyoffice/Data/tenants# ls -a . .. tenant1 tenant2 root@3694c287928a:/var/www/onlyoffice/Data/tenants# - Crie uma nova pasta dentro do diretório
-
root@3694c287928a:~# ls /var/www/onlyoffice/Data/tenants/tenant1 config.json license.lic root@3694c287928a:~#license.lic– arquivo obrigatório com a licença do locatárioconfig.json– arquivo de configuração obrigatório que substitui a configuração principal do servidor
É obrigatório preencher o segredo JWT.
-
O arquivo
license.licsubstitui campos específicos da licença principal para o locatário. Suas regras são:- Assinatura: Assinatura da licença não é necessária.
- Herança de Campos: Você pode incluir alguns ou todos os campos da licença principal. Campos não especificados usarão os valores da licença principal por padrão.
-
Ajustes de Limites: Você não pode aumentar valores em comparação com a licença principal, mas pode diminuí-los. Campos aplicáveis incluem: connections, users_count, end_date, etc.
Aumentar valores é ineficaz porque a licença principal é validada sistematicamente.
Exemplo de
license.lic:{"branding":false,"connections":100,"users_count":0} -
O arquivo
config.jsonpermite substituir certas configurações do servidor.- Configurações Não Substituíveis: Configurações de inicialização (caminhos de log, cache de arquivos) não podem ser alteradas por locatário.
- Configurações Substituíveis: Configuração WOPI, filtragem de IP, segredo JWT e limites de tamanho de arquivo.
- Cache: Os valores são armazenados em cache por 5 minutos após a leitura.