Categorias
Docker Nuvem

Tutorial para rodar uma aplicação PHP em containers Docker explorando ferramentas para o desenvolvimento Web e diversas stacks

Meu  tutorial/projeto exemplifica como uma aplicação WEB pode rodar em containers, introduz o uso de ferramentas específicas auxiliares para o desenvolvimento de projeto web, mas não trata da criação e manutenção de imagens Docker, não é necessariamente um roteiro sem viés que busca uma instrução genérica mas sim, bem associada ao meu modo de trabalho, incluindo ferramentas de minha escolha e, apesar de útil para quem procura informações para configurar seu próprio projeto, foca em explicar a organização dos recursos e tecnologias, permitindo que novos contribuidores de projetos que já adotam esta estrutura possam entender, melhorar e executar recursos já configurados.

Requisitos

Os exemplos abaixo são escritos para execução em um terminal linux, mas você pode facilmente executá-los em outro sistema operacional com alguns ajustes.

Este projeto considera que você já possui o Docker e o Docker Compose instalado em seu sistema operacional(veja gpupo-meta/setup-machine). Se você possui um computador sem suporte a virtualização talvéz não consiga rodar o Docker. Eu enfrentei este problema em um Mac Book Pro 2010.

Se você pretende seguir as instruções abaixo até o fim, prepare-se para trafegar mais de 3Gb de dados, entre imagens Docker e pacotes de dependência, então, se você está dependendo de sua conexão EDGE, apenas leia o conteúdo, a leitura recomendada e deixa pra executar pra valer quando estiver melhor de conexão, ok?

Vários termos usados neste tutorial possuem links que facilitarão o entendimento de quem não está familiarizado com eles, então recomendo a leitura das referências.

Alguns comandos devem ser executados em seu terminal tradicional e quando for este o caso, o símbolo :computer: estará presente, porém outros comandos requerem a execução a partir do terminal virtualizado. Quando for este o caso, o símbolo :whale: estará próximo, indicando que a execução deve ser feita no bash do container. Como chegar lá ? Você vai aprender logo abaixo…

Um último requisito importante é paciência e dedicação pois é bastante coisa pra ler, seguir referências, executar comandos, analizar diffs e refazer até entender. Pra te motivar e também responsabilizar, eu gastei várias horas de trabalho escrevendo este tutorial, tirando as melhores técnicas do meu vaú de tesouross, para que você aí do futuro aprendesse a usá-las, então, me dê algum crédito e esforço quando seguir com este tutorial, ou, se preferir algo mais facil, por seguir por aqui

Se tudo estiver pronto, selecione seu player e vamos em frente.

Start

Categorias
App main Nuvem Segurança

Monitore seu Apache

Monitorar em tempo real o que acontece com seu servidor Web é, em muitos momentos,
importantíssimo para o processo de localizar ataques, bots, tráfego mal redirecionado ou pontos
de sobrecarga.

Claro que sempre podemos ler as linhas do access_log utilizando tail -f /var/log/httpd/access_log; mas esta técnica envolve mais feeling do que precisão.

Uma ferramenta que me ajuda neste trabalho, em servidores Redhat/CentOs/Amazon Linux AMI é o Apachetop.

Categorias
main Nuvem

Montando buckets Amazon S3 no linux

Dependências

 


yum install -y gcc libstdc++-devel gcc-c++ fuse fuse-devel \
curl-devel libxml2-devel openssl-devel mailcap</span>

Instalar o s3fs


cd /tmp
wget http://s3fs.googlecode.com/files/s3fs-1.61.tar.gz
tar -xvf s3fs-1.61.tar.gz 
cd s3fs-1.61
./configure --prefix=/usr
make
make install; #(as root)

Criar o arquivo .passwd-s3fs no HOME do usuário que vai montar os Buckets,

com permissão 600, com o conteúdo  access:secretIds (suas credenciais).

 

Crie o ponto de montagem e montando:


mkdir -r ~s3/ecommerce01;
s3fs ecommerce01 ~/s3/ecommerce01;
Categorias
main Nuvem

Como montar volumes EBS em sua instância EC2

1) listar os volumes EBSs

fdisk -l

Os volumes EBS estão como /dev/xvdf por exemplo.

Normalmente temos uma uma sequência a partir da letra f.

 

2) Formatar cada volume em ext4:

mkfs -t ext4 /dev/xvdf  


3) Adicionar a montagem à inicialização:

echo  ‘/dev/xvdf   /var/log    ext4    defaults,noatime  0 0’ >> /etc/fstab