Giter VIP home page Giter VIP logo

pipeline-site-exemplo's Introduction

Pipeline Site Exemplo - www-xtpo.techroute.com.br - Readme em construção

Descrever passo a passo, a instrução para criação de um pipeline na AWS, de um site estático (HTML, CSS e JavaScript) de exemplo, que tem como proposta a arquitetura abaixo:

alt text

  • Abrangência:
    • Aplica-se a criação de pipeline de qualquer site estático (HTML, CSS e JavaScript) que tenha como objetivo sua infraestrutura na Cloud AWS.
  • Pré-requisitos:
    • Acesso a console da AWS com privilégios administrativos
    • Conhecimentos em administração/criação de recursos na AWS
    • Bucket S3 - Para armazenamento do conteúdo do site
    • CloudFront - Para distribuição rápida do conteúdo nas regiões da AWS
    • Route53 - Para resolução de nomes
    • CodeBuild - Para o projeto de compilação do site
    • CodePipeline - Para automação da entrega contínua
    • Certificate Manager - Para uso de certificado SSL válido
    • AWS Backup - Para backup do conteúdo da bucket S3
    • Grafana - Para dashboad
  • Justificativas de uso:
    • Oferecer atualizações rápidas, confiáveis, automatizar a fase de compilação e implantação sempre que ocorrer mudanças no código, sem que haja a necessidade de alocação de um profissional de infraestrutura, diminuir o custo operacional e tornar o ambiente mais resiliente.

Descrição

  • Crie uma bucket S3, no exemplo a seguir criei a bucket www-xpto.techroute.com.br.

  • Marque as opções [ACLs enabled] e [Object writer] alt text

  • Mais abaixo, em Bucket Versioning marque a opção [Enable] alt text

  • Desça a barra de rolagem para baixo e clique em [Create bucket] alt text

  • Ainda nas definições da bucket criada, na guia [Management], clique em [Create lifecycle rule] alt text

  • Na tela de configurações do lifecycle, em Choose a rule scope, selecione a opção Apply to all objects in the object conforme imagem abaixo alt text

  • Desça a barra de rolagem para baixo e em Lifecycle rule actions selecione a opção

  • Permanently delete noncurrent versions of objects Logo abaixo, em Permanently delete noncurrent versions of objects defina as os valores das propriedades de acordo com as suas necessidades, nesse exemplo, determinei manter 3 versões dos objetos por um período de 30 dias cada versão. alt text

Nota: Vale lembrar que, já possuímos todo o conteúdo do site no github em uma ou mais branchs.

Ainda em S3, crie uma nova bucket com o mesmo nome alterando o sufixo, acrescente -log Exemplo: www-xpto.techroute.com.br-log, nesse momento, não será necessário tornar essa bucket pública, mas defina as configurações de Object Owership como [ACLs enabled] e [Object writer]

  • Na console da AWS busque por CloudFront

alt text

  • Nas definições/configurações do CloudFront clique em [Create distribution]

alt text

  • Em Origin domain busque e selecione a bucket que foi criada em passos anteriores.

alt text

  • Desça a barra de rolagem para baixo, selecione a opção Yes use OAI (bucket can restrict access to only CloudFront clique em [Create new OAI] e por fim marque a opção Yes, update the bucket policy

alt text

alt text

  • Em Default cache behavior em Viewer selecione a opção GET, HEAD

alt text

  • Mais abaixo, em Settings selecione o certificado SSL Wilcard correspondente ao domínio que está trabalhando.

alt text

  • Desça a barra de rolagem para baixo e preencha os campos conforme image abaixo:

  • Em Default root object - optional informe o nome do objeto que corresponde as requisições do site em "/"

  • Em Standard logging marque a opção On e selecione uma bucket que armazenará os logs do CloudFront, por fim no campo Description - optional adicione uma breve descrição para identificar com a facildade essa distribuição de CDN.

alt text

  • Ainda nas configurações do CloudFront, na terceira guia em [Error pages] clique em [Create custom error response], na próxima tela em [HTTP error code] selecione 404: Not Found em Custom response code selecione Yes e em Response page path informe "/404" sem as aspas e em HTTP response code, selecione 404: Not Found

alt text

pipeline-site-exemplo's People

Contributors

alanqueiroz avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.