Sign inSign up

lambdadeveloper/ground

By lambdadeveloper

•Updated 5 months ago

Image
0

767

lambdadeveloper/ground repository overview

⁠λ{ ᴳᴿᴼᵁᴺᴰ... }

Compilou Lambda Tools Compilou Lambda CLient Imagem Base ico-λalpine

Este é um repositório de imagens base utilizadas pela Compilouᴵᵀ e seus colaboradores, criado e mantido no intuito de facilitar a criação e o acesso a ambientes funcionais.

O container base é a versão mais recente do Alpine Linux, com atualizações constantes sempre que houverem correções de segurança ou quando convir.

⁠Banco de dados

MariaDB

Optamos por utilizar o MariaDB, especificamente na versão 10.3v por questões de compatibilidade e facilidade de configuração com as ferramentas e frameworks geralmente utilizados.

Além da curva de aprendizado de modelagem, MariaDB possui poucos requisitos e pouca necessidade de intervenção do usuário/desenvolvedor para a configuração inicial.

Na configuração atual o banco de dados pode ser executado sem quaisquer parâmetro, já criando uma estrutura padrão, no entanto é recomendado configurar no mínimo as seguintes variáveis de ambiente:

MYSQL_DATABASE      # Nome do banco de dados.
MYSQL_USER          # Nome do usuário.
MYSQL_PASSWORD      # Senha para o usuário.
MYSQL_ROOT_PASSWORD # Senha para superusuário.

Baseado na solução do MariaDB-Alpine do @jbergstroem⁠.

⁠Proxy / NGINX

NGINX

Decidimos utilizar o NGINX como proxy inicialmente como uma tentativa de facilitar o desenvolvimento e manutenção dos projetos quando estes necessitam de ambientes e integrações complexas, como consumir APIs e serviços de outros containers ou fontes onde se faça necessário redirecionar o fluxo das requisições para os respectivos serviços de forma descomplicada.

Imagine o seguinte cenário: precisamos realizar manutenção em um sistema que consome N+1 microsserviços (que acompanham o projeto).

Utilizando a estrutura λ{ ᴳᴿᴼᵁᴺᴰ... } podemos setar um container para cada serviço executando sua aplicação na respectiva porta - inclusive podendo atender no respectivo endereço/domínio apenas setando os hosts do NGINX direcionando para os respecivos containers.

Sem essa facilidade seria necessário executar cada microsserviço em uma porta diferente, configurar todo o ambiente para que os serviços se comunicassem nas novas portas e torcer para que tudo funcione bem.

⁠PHP

PHP 7.3 Laravel JustCLI

⁠NodeJS

NodeJS 13

⁠Python

Tag summary

Content type

Image

Digest

sha256:82dcc963c…

Size

405 MB

Last updated

5 months ago

docker pull lambdadeveloper/ground:node18