DockerFile – Ubuntu + SSH + WebMin

Nos últimos meses eu precisei entender melhor como configurar um container e precisava de acesso irrestrito a ele, como se estivesse trabalhando em um host comum. A necessidade era testar configurações, customizações e mudanças nos scripts para poder escrever um DockerFile completo.

Meu dilema era composto pela necessidade de usar uma receita incomum. No meu caso precisava de um PHP com diversos plugins, mas:

  • Ao invés de usar CentOS, usaria Ubuntu Server
  • Ao invés de usar Apache, usaria Nginx
  • Ao invés de instalar o Nginx via Apt-Get, compilaria-o para adicionar o Google PageSpeed Module, entre outras extensões.
  • Ao invés do MySQL, MariaDB
  • Ao invés do PHP normal, usaria via FastCGI

Na prática, com o que eu queria não há dockerfile pronto. Pelo menos eu vasculhei por dias o google e não consegui achar um DockerFile que me atendesse. Assim, decidi criar meu próprio DockerFile, mas para isso precisava configurar tudo isso manualmente, para validar comando a comando, então, acesso irrestrito como em um host, seria a alternativa mais interessante. Daí nasceu esse DockerFile que ajuda no desenvolvimento de novas imagens.

MonolithFirst @ Fowler, artigo comentado

Olá pessoal, hoje vou falar um pouco sobre um padrão detalhado pelo Fowler meses depois da minha saída do iMusica. Por sinal, há algo de interessante com esse padrão, pois era algo que alguns membros do meu time reclamavam e consideravam um anti-pattern. Vou aproveitar esse post vou tentar usar uma linguagem ainda mais informal que a de praxe.

O nascimento dos padrões

Na real, uma máxima você não pode ter fora da sua cabeça:

Padrões são escritos por pessoas que interpretam situações, problemas e soluções recorrentes e resolvem escrever sobre o tema.

Um padrão nasce da observação de um grupo de pessoas ou projetos que fazem algo de uma determinada forma (parecida ou idêntica) e que chamam a atenção do observador. O observador identifica o “jeitão”, técnica ou solução para escrever sobre aquilo. Assim nasce um padrão.

Se você não entendeu as implicações disso, pense: