quinta-feira, 31 de outubro de 2013

Deploy site em PHP com GIT e Debian

Achei alguns tutoriais na net que faziam algo parecido automatizando o processo de publicação com GIT, mas preferi fazer de outra maneria que não misturava meu código fonte com os arquivos do GIT.

Inicialmente vou explicar o ambiente que temos:
CPU D: computador de desenvolvimento do código fonte PHP e onde versiono com GIT
CPU P: computador de produção
No meu caso os dois computadores rodam Debian, mas poderia ser outro Linux.
Instalei GIT e SSH no dois computadores.

  1. A partir do CPU D acessei remotamente o CPU P via ssh:
    ssh [usuario CPU P]@[ip CPU P]
  2. De dentro do CPU P criaremos um diretório que vai receber uma referencia do código fonte versionado no CPU D.
    mkdir [nome diretório]
    cd [nome diretório]
  3. Agora vamos criar uma versão bare do nosso repositório. Resumindo bare é uma versão com as configurações do GIT e dados da versão do seu código fonte.
    git clone --bare ssh://[usuario CPU D]@[ip CPU P]/home/usuário CPU D/
  4. No ultimo passo vamos baixar todo nosso código fonte para a o diretório onde está rodando o servidor web:
    GIT_WORK_TREE=/[diretório de produção] git checkout -f

    Este comando acima precisa ser executado de dentro do 
    [nome diretório], passo 2, onde foi feito o bare.


Mas qual a vantagem disso?
Poderíamos usar o rsync para colocar o código fonte na produção sem problemas!
Mas os arquivos de configuração do GIT seriam levados juntos. Repare no ultimo comando, item 4, que defino o diretório, GIT_WORK_TREE, é onde os arquivos serão colocados.

Resumindo colocamos as configurações da versão em um diretório e os arquivos versionados em outro diretório.

Referências:
How to use git over SSH http://www.mindfuzz.net/?p=250
Simple Git Deployment http://ryanflorence.com/simple-git-deployment/

terça-feira, 9 de abril de 2013

HARD RESET Tablet Diamond Multilaser NB005

Essa dica é para quem tem o Tablet Diamond Multilaser NB005, talvez funcione em outras versões.

Se seu tablet estiver travado, ou seja, com aquele android morto na tela de inicialização. Ou se você esqueceu a senha de bloqueio, ainda tem esta alternativa.

Lembro que este procedimento apagará todos os dados pessoais (fotos, arquivos de texto, música entre outros).

Siga os passos abaixo para deixa seu tablet como de fabrica:
  1. Carregue a bateria dele no máximo;
  2. Desligue o tablet;
  3. Segure o botão Power (de ligar) e ao mesmo tempo o botão de Volume (-);
  4. Nesta tela abaixo clique na opção 19


  5. Na tela abaixo arraste seu dedo (sem soltar de um X até o outro X)


  6. Nesta próxima tela selecione a 3a opção da coluna da esquerda.
  7. Aguarde até o procedimento terminar;
Observação: Não me responsabilizo pela perda de dados que este procedimento pode causar.

Se você conseguir fazer, ou tiver alguma dúvida sobre este procedimento ficarei muito grato pelo seu comentário.

terça-feira, 22 de janeiro de 2013

Nginx PHP-FPM unix socket jeito certo

Buscando melhorar um pouco mais o desempenho do Nginx e PHP-FPM, depois de tanto procurar, segue o passo a passo como mudar a configuração da conexão do modulo FastCGI, de TCP/IP socket para unix socket, esta configuração é recomendada para se obter mais desempenho segundo o site Nginx. Tem um benchmark desta configuração neste site i.amniels.com.

Na configuração padrão (Nginx + PHP-FPM) do arquivo /etc/nginx/nginx.conf temos:
fastcgi_pass   127.0.0.1:9000;

Para que funcione com unix socket altere para:
fastcgi_pass   unix:/var/run/php5-fpm.sock;


Mas não é só isso, edite o arquivo de configuração do PHP-FPM, no meu caso /etc/php5/fpm/pool.d/www.conf

Temos a linha com o seguinte conteúdo:
listen = 127.0.0.1:9000

Altere para:
listen = /var/run/php5-fpm.sock

Para finalizar reinicie os serviços nginx e php5-fpm.

Fontes:
i.amniels.com
wiki.nginx.org
askubuntu.com
ferrari.eti.br