Docker, do Básico a Orquestração e Clusterização - 3. Montando containers

Docker, do Básico a Orquestração e Clusterização - 3. Montando containers

-- Nessa série de artigos estamos abordando tópicos para uma boa utilização do Docker . Dando continuidade ao artigo anterior vamos abordar a criação “on the fly” de containers para rodar sua aplicação, a criação utilizando receitas em arquivos Dockerfile e algumas dicas para montar um bom Dockerfile para sua aplicação. Montando container “na unha” Primeiramente vamos para a montagem de um container. O jeito mais simples onde você consegue ver de maneira direta o que está acontecendo é criando na hora, “on the fly”, passo a passo até o container estar pronto.
Docker, do Básico a Orquestração e Clusterização - 2. Básico

Docker, do Básico a Orquestração e Clusterização - 2. Básico

Nessa série de artigos estamos abordando tópicos para uma boa utilização do Docker . -- Dando continuidade ao artigo anterior com introdução sobre o que é docker e como funciona agora abordaremos como utilizar o Docker: baixar imagens, rodar containers, monitorar, versionar, manipular imagens criadas, criar imagens com base em arquivo com receitas (Dockerfiles), principais comandos e dicas de boas práticas baseando em dificuldades e gotchas que tenho enfrentado.
Docker, do Básico a Orquestração e Clusterização - 1. Introdução

Docker, do Básico a Orquestração e Clusterização - 1. Introdução

Nessa série de artigos abordaremos tópicos para uma boa utilização do Docker . -- Se você desenvolve ou desenvolveu para web deve ter esbarrado em problemas de configuração de ambiente ou padronização de ambientes para desenvolvedores, homologação e produção. Se pesquisou a respeito então provavelmente já ouviu falar sobre Docker, Vagrant, ou pelo menos Virtualbox. Primeiramente vamos definir alguns conceitos. Virtualização Sem muitos rodeios é quando criamos um ambiente que roda sobre outro, e pode ser montado direto no hardware (Bare Metal) como no Xen, VMware, Hyper-V, ou via software (Hosted) como no Virtualbox, Paralel Desktops.

Camera como leitor de código de barras

Aproveitando que mudei o paradigma desse site para static blogging usando Jekyll (ver último post) vamos escrever sobre algo muito útil (pelo menos para mim myself and I). Lendo um código de barras usando a webcam do meu notebook. Um tempo atrás eu queria facilitar o pagamento de minhas contas usando a webcam do meu notebook. Usando Debian na época instalei as dependências e compilei o Zbar, que hoje já é disponibilizado nos sources das principais distribuições de Linux.

Olá Mundo v2, agora com jekyll e github pages

Depois de um tempo no Blogger e de tentar dar uma cara melhor usando wordpress resolvi dar uma chance ao static blogging e de quebra testar o github pages. Afinal estou praticamente há 2 anos sem escrever aqui. Motivos para static blogging ao invés de outros CMSs? Muitos, abaixo alguns deles: Performance do site (não há processamento) Sem paus em gerenciadores de conteúdo (é só escrever em markdown) Hospedagens baratas e algumas gratuitas (github pages) Backup e deploys simples (git clone, altera, git push) Apesar de ter alguns outros sites hospedados a locaweb me cansou com inúmeros reparos de servidores, atualizações que quebravam alguns dos sites, péssima qualidade de hospedagem e péssimo atendimento.
Apache versus Nginx

Apache versus Nginx

Depois de uma fase conturbada e sem artigos novos vamos retornar escrevendo um comparativo entre Nginx e Apache. -- Para elaborar os testes criamos quatro arquivos de naturezas diferentes para serem servido pelo Apache e posteriormente pelo Nginx para que possamos comparar. Para medir a capacidade de cada servidor utilizamos um outro computador conectado na mesma rede do servidor testado e com a rede isolada efetuamos os testes usando ab (Apache Benchmark).

Android 4.0.4 no Xperia Arc fácil fácil

Se você também tem um Xperia Arc ou Arc S e não aguenta esperar a atualização para o Android 4 o ICS siga os passos. Baixando os pacotes Flashtool Primeiro baixamos a última versão do FlashTool no site http://androxyde.github.com/ . O projeto está bem ativo e com bastante atualizações. No dia que fiz o upgrade no celular era a v0.9.2.0 mas no dia que escrevi o artigo já era a v0.
Integrando Zend e Doctrine

Integrando Zend e Doctrine

Saudações. Para ilustrar essa integração criei um projeto praticamente do zero e segui instruções dos sites que cito nas referências ao final deste artigo. Arquivos: Baixamos o Zend framework no link http://framework.zend.com/download/latest (Versão estável na época 1.12.0); -- Baixamos o Doctrine no link http://www.doctrine-project.org/projects/orm.html (Versão estável na época 2.2.2) Hands On: Pastas e arquivos: Criamos uma pasta para o projeto que vamos desenvolver: mkdir -p /var/www/nginx/exemplo/ (se estiver usando o nginx como eu) ou

Nginx não repassa os parâmetros query string para o framework

Saudações, A dica do dia é habilitar o envio de query string para o framework (zend, codeigniter, etc…) para que possa receber os parâmetros através de uma requisição GET. O problema foi detectado usando zend framework e ao chamar uma action usando query string para passar parâmetros. (http://exemplo.inet/teste/index?var1=bla&var2=yey) as variáveis vinham vazias e usando a notação de barras no próprio zend (http://exemplo.inet/teste/index/var1/bla/var2/yey) funcionava normalmente. A configuração desse host no nginx estava parecido com o abaixo:

Gerar arquivo de deploy usando Git

Saudações. Primeiramente vamos explicar alguns termos: Deploy: a tradução mais próxima para o sentido de deploy que vamos usar seria implantação. Git: Sistema de controle de versão distribuido desenvolvido por Linus Torvalds. Commit: Grava as mudanças feitas no repositório como uma estágio atual. SHA1: Id único que identifica um commit. Integração contínua: Nome dado à rotina de integração de alterações ao sistema ou software desenvolvido incluindo testes que verificam se houve quebra de funcionalidades.