詳細検索

FuelPHP + Ansible para desenvolvimento/operação super fácil - Instalação do FuelPHP

Avatar
por 吉亨斗
3 min de leitura

FuelPHP + Ansible para desenvolvimento/operação super fácil - Instalação do FuelPHP
Traduzido do 日本語 • Ver original

É hora dos desenvolvedores construírem infraestrutura facilmente. O Ansible é uma ferramenta poderosa para construir ambientes que facilita a construção de um ambiente.

Existem várias outras ferramentas para construir um ambiente, como chef, puppet e docker, mas por favor, consulte o artigo que escrevi antes para entender por que escolhi o Ansible.

Comparação e impressões das ferramentas de automação ambiental da construção dos engenheiros de software da Qiita

Frameworks PHP como Lalavel, o clássico CakePHP e o ultra-rápido Phalcon se tornaram populares nos últimos anos, mas o motivo pelo qual escolhi o FuelPHP é por causa de seus recursos ricos e muita informação em japonês. Eu simplesmente gosto.

De agora em diante, gostaria de apresentar o know-how do desenvolvimento usando FuelPHP + Ansible na seguinte ordem.

  • Parte 1: Instalação do FuelPHP
  • Parte 2: Modo de Manutenção de Comutação
  • Parte 3: Implantação
  • Parte 4: Configuração e precauções durante a operação de desenvolvimento/produção

Vou explicar com base no seguinte ambiente de desenvolvimento. Também é para quem conhece o conceito de Ansible.

  • MacOS X 10.10.2
  • ansible 1.7.2
  • FuelPHP 1.7

※ Existem muitas instruções de instalação do ansible se você pesquisar no Google, então vou omitir.

Para rodar o playbook para instalar o FuelPHP no Ansible, você precisa escrever os passos em ~/papel/nome do papel/subordinado no formato yaml. A seguir está o conteúdo do processo de ~/nome do papel/tarefa/tarefa/main.yml.

- nome: (1) Copiar o código do repositório
git: repo={{ repositório }} dest={{ root_dir }} accept_hostkey=sim
Sudo: Não

- nome: (2) Autoatualização do Controlador
shell: php composer.phar autoatualização chdir={{ root_dir }}

- Nome: (3) Atualização do Fabricante
shell: php composer.phar update chdir={{ root_dir }}

- nome: (4)conjunto fuel_env. 
shell: env FUEL_ENV=production php oil -v chdir={{ root_dir }}

- nome: (5) criar link. 
arquivo: path={{document_root_path}} src={{fuel_public_dir_path}} state=link

- Nome: (6)Migração de dB. 
shell: FUEL_ENV=produção PHP refinação de petróleo migrar chdir={{ fuel_dir_path }}

O {{ }} usado no processo contém o nome da variável. A definição da variável está escrita em /role/rolename/vars/main.yml. O conteúdo acima é

# nome do repositório github fuelPHP
repositório: git@github.com:fuel/fuel.git

# DIR onde o corpo fonte é armazenado
root_dir: /var/www/ 

# Nome do DIR para FuelPHP
fuel_dir_path: /var/www/test

# Nome público do DIR FuelPHP
fuel_public_dir_path: /var/www/test/public

# Nome do DIR da raiz do documento
document_root_path: /var/www/html/public

Na ordem de processamento, (1) Baixe o código-fonte FuelPHP do github. (2) Atualize o próprio fabricante (3) Instale a parte central do FuelPHP com o controlador (4) Defina produção e defina para a variável ambiente FUEL_ENV (especifique produção) (5) Cole um link simbólico sob o diretório público do FuelPHP na raiz do documento (6) Gere automaticamente uma tabela migrando o FuelPHP

Este é o conteúdo do papel para instalar o FuelPHP no Ansible. Em seguida, vamos escrever o processo de execução do playbook.

~/fuelphp.yml especifica o nome do Papel a ser executado no playbook.

- nome: instalar FuelPHP. 
Apresentadores: ec2_web01
Sudo: Sim
remote_user: raiz
Papéis: 
- Nome do quadro

Em seguida, crie um arquivo de inventário. Defina o IP do servidor onde você quer rodar o Ansible em um arquivo chamado host.

[ec2_web01]
00.00.000.000

Por fim, apenas faça o playbook.

ansible-playbook - eu anfitrião fuelphp.yml

Até agora, implementamos os procedimentos de instalação necessários para o desenvolvimento do FuelPHP no código Ansible. Acho que a ideia de infraestrutura imutável é que, ao visualizar procedimentos de instalação de middleware e procedimentos de construção do ambiente dessa forma, é mais fácil compartilhar informações entre os membros da equipe e economizar tempo e esforço na construção. Vamos adotar ativamente o Ansible e aumentar a eficiência do desenvolvimento!

Na próxima vez, vou introduzir um modo de manutenção super fácil e rápido usando Ansible+FuelPHP.

Related Articles