Pular para o conteúdo principal

Configuração de storage - Amplia Reg

A seção de configuração BlobStorage define como a aplicação armazena e recupera arquivos.

Sistema de arquivos​

Armazena arquivos no sistema de arquivos. Configurações disponíveis:

  • Path: o caminho onde os arquivos serão armazenados.

Exemplo (variáveis de ambiente):

BlobStorage__Type=FileSystem
BlobStorage__Path=/var/files/myapp

Exemplo (arquivo .ini ou .conf):

[BlobStorage]
Type=FileSystem
Path=/var/files/myapp

Exemplo (configuração JSON):

{
...,
"BlobStorage": {
"Type": "FileSystem",
"Path": "/var/files/myapp"
},
...
}

Azure Storage Account​

Armazena arquivos em um container de Azure Storage Account. Configurações disponíveis:

  • ConnectionString: a string de conexão da conta de armazenamento.
  • ContainerName: o nome do container onde os arquivos serão armazenados.

Exemplo (variáveis de ambiente):

BlobStorage__Type=Azure
BlobStorage__ConnectionString=DefaultEndpointsProtocol=https;AccountName=myaccountname;AccountKey=myaccountkey;EndpointSuffix=core.windows.net
BlobStorage__ContainerName=myapp-container

Exemplo (arquivo .ini ou .conf):

[BlobStorage]
Type=Azure
ConnectionString="DefaultEndpointsProtocol=https;AccountName=myaccountname;AccountKey=myaccountkey;EndpointSuffix=core.windows.net"
ContainerName=myapp-container

Exemplo (configuração JSON):

{
...
"BlobStorage": {
"Type": "Azure",
"ConnectionString": "DefaultEndpointsProtocol=https;AccountName=myaccountname;AccountKey=myaccountkey;EndpointSuffix=core.windows.net",
"ContainerName": "myapp-container"
},
...
}

AWS S3 (Simple Storage Service)​

Armazena arquivos em um S3 Bucket. Configurações disponíveis:

  • Region: a região do bucket.
  • BucketName: o nome do bucket onde os arquivos serão armazenados.
  • AccessKey: o ID da chave de acesso de um usuário IAM com acesso ao bucket.
  • SecretKey: a chave de acesso secreta de um usuário IAM com acesso ao bucket.

Exemplo (variáveis de ambiente):

BlobStorage__Type=AwsS3
BlobStorage__Region=us-east-1
BlobStorage__BucketName=myappbucket
BlobStorage__AccessKey=MYACCESSKEYID
BlobStorage__SecretKey=MYSECRETACCESSKEY

Exemplo (arquivo .ini ou .conf):

[BlobStorage]
Type=AwsS3
Region=us-east-1
BucketName=myappbucket
AccessKey=MYACCESSKEYID
SecretKey=MYSECRETACCESSKEY

Exemplo (configuração JSON):

{
...
"BlobStorage": {
"Type": "AwsS3",
"Region": "us-east-1",
"BucketName": "myappbucket",
"AccessKey": "MYACCESSKEYID",
"SecretKey": "MYSECRETACCESSKEY"
},
...
}

Armazenamento de objetos compatível com S3​

Um serviço de armazenamento de objetos compatível com S3 auto-hospedado, também conhecido como "clone do S3", também pode ser utilizado, por exemplo o minIO. Nesse caso, em vez da Region, especifique o Endpoint.

Exemplo (variáveis de ambiente):

BlobStorage__Type=AwsS3
BlobStorage__Endpoint=http://localhost:9000
BlobStorage__BucketName=myappbucket
BlobStorage__AccessKey=MYACCESSKEYID
BlobStorage__SecretKey=MYSECRETACCESSKEY

Exemplo (arquivo .ini ou .conf):

[BlobStorage]
Type=AwsS3
Endpoint=http://localhost:9000
BucketName=myappbucket
AccessKey=MYACCESSKEYID
SecretKey=MYSECRETACCESSKEY

Exemplo (configuração JSON):

{
...
"BlobStorage": {
"Type": "AwsS3",
"Endpoint": "http://localhost:9000",
"BucketName": "myappbucket",
"AccessKey": "MYACCESSKEYID",
"SecretKey": "MYSECRETACCESSKEY"
},
...
}

Por padrão, o endereçamento no estilo de caminho é utilizado quando um armazenamento compatível com S3 é configurado, em vez do endereçamento padrão no estilo de host virtual usado com um bucket AWS S3 padrão. Isso pode ser alterado com a configuração ForcePathStyle (true ou false). Para mais informações sobre endereçamento S3, consulte Virtual hosting of buckets.

Google Cloud Storage​

Armazena arquivos em um bucket do Google Cloud Storage. Você precisará de uma conta de serviço com a função Storage Object Admin. Configurações disponíveis:

  • BucketName: o nome do bucket onde os arquivos serão armazenados.
  • ProjectId: o ID do projeto no Google Cloud.
  • PrivateKeyId: o ID da chave privada da conta de serviço.
  • PrivateKey: a chave privada da conta de serviço.
  • ClientEmail: o e-mail da conta de serviço.

Exemplo (variáveis de ambiente):

BlobStorage__Type=Gcp
BlobStorage__BucketName=myappbucket
BlobStorage__ProjecId=my-app-project-id
BlobStorage__PrivateKeyId=MYPRIVATEKEYID
BlobStorage__PrivateKey=MYPRIVATEKEY
BlobStorage__ClientEmail=myserviceaccountemail@my-app-project-id.iam.gserviceaccount.com

Exemplo (arquivo .ini ou .conf):

[BlobStorage]
Type=Gcp
BucketName=myappbucket
ProjecId=my-app-project-id
PrivateKeyId=MYPRIVATEKEYID
PrivateKey=MYPRIVATEKEY
ClientEmail=myserviceaccountemail@my-app-project-id.iam.gserviceaccount.com

Exemplo (configuração JSON):

{
...
"BlobStorage": {
"Type": "Gcp",
"BucketName": "myappbucket",
"ProjecId": "my-app-project-id",
"PrivateKeyId": "MYPRIVATEKEYID",
"PrivateKey": "MYPRIVATEKEY",
"ClientEmail": "myserviceaccountemail@my-app-project-id.iam.gserviceaccount.com"
},
...
}