AWS SDK PHP – Criando um Bucket S3 em menos de 5 minutos.

Olá Pessoal,

Vou demonstrar a facilidade de integração com serviços da Amazon Web Services (AWS), nesse primeiro artigo, iremos criar um bucket utilizando a API do S3 (Com o SDK PHP da AWS) em menos de 5 minutos.

O requisito minimo para instalar o SDK é utilizar o Composer.

Adicionando o SDK da AWS no seu Composer.

No arquivo composer.json adicione a entrada aws/aws-sdk-php, conforme exemplo abaixo:

{
    "require": {
        "aws/aws-sdk-php": "2.*"
    }
}

Essa entrada diz ao composer, que é uma biblioteca requerida na versão 2.*

Atualizando o Composer
Para atualizar o composer, e fazer com que ele faça o update e instale as novas bibliotecas adicionadas ao composer.json, basta executar em seu command line o parametro de update:

php composer.phar update

Carregando o SDK em sua aplicação

Caso sua aplicação já possoa um autoload, o que a maioria dos frameworks já oferece, basta começar a utilizar a biblioteca, caso contrário, adicione a biblioteca em seu código:

require '/path/to/sdk/vendor/autoload.php';

Nosso primeiro balde

Definindo Namespace

use Aws\S3\S3Client;

A linha acima, define que a classe S3Client será usada nesse nosso contexto, logo após o namespace, vamos instanciar então a classe S3Client com as nossas credenciais (Consulte sobre IAM para gerar sua credencial)

$client = S3Client::factory(array('key' => 'key', 'secret' => 'secret'));

Com o nosso client em memória, vamos criar o nosso primeiro balde utilizando o PHP, e tratando uma possivel execessão que é bem comum em se Tratando do S3, que é causado quando se tenta criar algum bucket com o nome de outro já existe (mesmo por outros usuários)

try {
			$bucket = $client->createBucket(array(
			'Bucket' => 'MyFirstBucket_Rivendel'
		));
			
		} catch (Aws\S3\Exception\BucketAlreadyExistsException $e) {
			return array(
				'error' => $e->getMessage()
			);
		}

Para consultar outras Execessões possiveis, consulte a API: http://docs.aws.amazon.com/aws-sdk-php/latest/class-Aws.S3.Exception.S3Exception.html.

Caso nenhuma exceção seja lançada, o retorno do seu o objeto pode ser visto e resgatado em forma de array da seguinte forma:

var_dump($bucket->toArray());

Pronto, seu primeiro Bucket foi criado.

No próximo post, iremos efetuar upload de diversas formas para o S3, e modificar políticas de privacidade do Bucket, podendo torna-lo em até web site estático.

Gostou do conteúdo? Tem alguma dúvida? Entre em contato com nossos Especialistas Mandic Cloud, ficamos felizes em ajudá-lo.



Serviços e Plataformas Cloud


Com entrega de consultoria baseada nos principais métodos e práticas de mercado, os Especialistas Mandic Cloud evidenciam e aceleram os resultados e impacto de transformação da área de tecnologia nas empresas com planejamento, implantação/migração e sustentação de workloads com gerenciamento na nuvem com o uso de automação, melhores práticas em DevOps e Data Analytics (Engenharia de Dados) para a Transformação Digital de negócios nas principais plataformas de cloud do mercado:
Gestão AWS Brasil

com Especialistas certificados para te acompanhar de perto, em português. Amazon AWS

Virtualização de Servidores VMware

e Especialistas Mandic Cloud 24x7 que simplificam sua vida. VMware

Orquestração Cloud OpenStack

com Especialistas Full-stack para conectar sua empresa ao futuro. OpenStack Cloud

Microsoft Azure Cloud

e Especialistas em Clouds acelerando o acesso do seu negócio à nuvem corporativa. Microsoft Azure

Google Cloud Platform

e Especialistas DevOps construindo o futuro com Transformação Digital. Google Cloud Platform