Catálogo de Sistemas

Documentação e procedimentos

Ferramentas do usuário

Ferramentas do site


sistema_academico:criacao_de_ambiente_de_desenvolvimento

Diferenças

Aqui você vê as diferenças entre duas revisões dessa página.

Link para esta página de comparações

Ambos lados da revisão anterior Revisão anterior
Próxima revisão
Revisão anterior
sistema_academico:criacao_de_ambiente_de_desenvolvimento [2019/08/22 14:52]
Carlitos
sistema_academico:criacao_de_ambiente_de_desenvolvimento [2021/06/09 15:51] (atual)
Carlitos [2. Docker Apache2/PHP5.6]
Linha 2: Linha 2:
  
 Para facilitar e padronizar a criação do ambiente de desenvolvimento foi adotado o uso de [[https://​www.docker.com/​get-started|Dockers]] para construção do servidor da aplicação (HTTP/​Apache e PHP) e do banco de dados (Postgres). E para facilitar a construção das dockers foi utilizado o [[https://​docs.docker.com/​compose/​|docker-compose]]. As dockers funcionam em diferentes sistemas operacionais,​ porém recomendamos o uso de Ubuntu ou Debian atualizados na máquina hospedeira. ​ Para facilitar e padronizar a criação do ambiente de desenvolvimento foi adotado o uso de [[https://​www.docker.com/​get-started|Dockers]] para construção do servidor da aplicação (HTTP/​Apache e PHP) e do banco de dados (Postgres). E para facilitar a construção das dockers foi utilizado o [[https://​docs.docker.com/​compose/​|docker-compose]]. As dockers funcionam em diferentes sistemas operacionais,​ porém recomendamos o uso de Ubuntu ou Debian atualizados na máquina hospedeira. ​
 +
 +Então é preciso instalar o Docker e o Docker-compose seguindo os passos abaixo:
 +<​code>​
 +sudo apt update
 +
 +# instalar o Docker
 +sudo apt install docker.io
 +
 +# Confira se foi instalado corretamente com
 +docker --version
 +
 +# instalar o Docker-compose -> ver aqui atualizado: https://​docs.docker.com/​compose/​install/​
 +sudo curl -L "​https://​github.com/​docker/​compose/​releases/​download/​1.29.2/​docker-compose-$(uname -s)-$(uname -m)" -o /​usr/​local/​bin/​docker-compose
 +sudo chmod +x /​usr/​local/​bin/​docker-compose
 +
 +# testar a instalação
 +sudo docker-compose --version
 +
 +# se não funcionar, experimente criar um link simbólico
 +sudo ln -s /​usr/​local/​bin/​docker-compose /​usr/​bin/​docker-compose
 +</​code>​
  
 Serão necessárias duas dockers. São elas: Serão necessárias duas dockers. São elas:
Linha 7: Linha 28:
 ===== 1. Docker Postgres 9.5 ===== ===== 1. Docker Postgres 9.5 =====
  
-Para construir essa docker crie uma pasta chamada ​"postgres". Dentro dessa pasta crie um arquivo chamado ​"docker-compose.yml" ​com o conteúdo:+Para construir essa docker crie uma pasta chamada ​''​postgres''​. Dentro dessa pasta crie outra pasta chamada ''​data''​ e um arquivo chamado ​''​docker-compose.yml'' ​com o conteúdo:
 <​code>​ <​code>​
 version: "​2"​ version: "​2"​
Linha 20: Linha 41:
     volumes:     volumes:
       - "​.:/​var/​lib/​postgresql/​backup"​       - "​.:/​var/​lib/​postgresql/​backup"​
 +      - "​./​data:/​var/​lib/​postgresql/​data"​
     ports:     ports:
       - 5003:5432       - 5003:5432
Linha 30: Linha 52:
 </​code>​ </​code>​
  
-Copie o arquivo de DUMP do banco (padrão compactado com Inserts explícitos - deve ser solicitado junto a equipe de desenvolvimento) para dentro da mesma pasta "postgres", por exemplo: dump.backup. ​+Copie o arquivo de DUMP do banco (padrão compactado com Inserts explícitos - deve ser solicitado junto a equipe de desenvolvimento) para dentro da mesma pasta ''​postgres''​, por exemplo: ​''​dump.backup''​
  
 E então após a salvar o arquivo vá até o terminal e entre com os comandos abaixo: E então após a salvar o arquivo vá até o terminal e entre com os comandos abaixo:
Linha 39: Linha 61:
  
 # construindo a docker... pode demorar um pouco dependendo da sua conexão com a Internet # construindo a docker... pode demorar um pouco dependendo da sua conexão com a Internet
-docker-compose build+sudo docker-compose build
  
 # subindo a docker e colocando-a em background # subindo a docker e colocando-a em background
-docker-compose up -d+sudo docker-compose up -d
  
 # quando tiver UP, vamos restaurar o DUMP do banco nela... isso pode demorar um pouco, algumas tabelas são grandes # quando tiver UP, vamos restaurar o DUMP do banco nela... isso pode demorar um pouco, algumas tabelas são grandes
-docker exec -it postgres sh -c "​pg_restore -U postgres -d dbsigaedu < /​var/​lib/​postgresql/​backup/​dump.backup --verbose"​+sudo docker exec -it postgres sh -c "​pg_restore -U postgres -d dbsigaedu < /​var/​lib/​postgresql/​backup/​dump.backup --verbose"​
  
 # Alterando a senha de todos os usuários para 1234 # Alterando a senha de todos os usuários para 1234
-docker exec -it postgres sh -c "psql -U postgres -d dbsigaedu -c \"​UPDATE usuario SET senha = md5('​1234'​)\""​+sudo docker exec -it postgres sh -c "psql -U postgres -d dbsigaedu -c \"​UPDATE usuario SET senha = md5('​1234'​)\""​
 </​code>​ </​code>​
  
-Pronto! Caso queira testar essa conexão pode utilizar o pgAdmin ​e acessar o banco de dados "dbsigaedu" ​pela porta 5003 através do IP 173.20.0.1, conforme definido no docker-compose.+Pronto! Caso queira testar essa conexão pode utilizar o [[https://​www.pgadmin.org/​download/​|PgAdmin]] ​e acessar o banco de dados ''​dbsigaedu'' ​pela porta ''​5003'' ​através do ''​localhost''​, conforme definido no arquivo de configuração da docker ​''​postgres''​.
  
 ===== 2. Docker Apache2/​PHP5.6 ===== ===== 2. Docker Apache2/​PHP5.6 =====
  
-Para construir essa docker crie uma pasta chamada ​"apache_php". Dentro dessa pasta crie um arquivo chamado ​"docker-compose.yml" ​com o conteúdo:+Para construir essa docker crie uma pasta chamada ​''​apache_php''​. Dentro dessa pasta crie um arquivo chamado ​''​docker-compose.yml'' ​com o conteúdo:
  
 <​code>​ <​code>​
Linha 70: Linha 92:
 </​code>​ </​code>​
  
-Crie um outro arquivo chamado ​"Dockerfile" ​com o conteúdo:+Crie um outro arquivo chamado ​''​Dockerfile'' ​com o conteúdo:
  
 <​code>​ <​code>​
Linha 123: Linha 145:
  
 ################################################################​ ################################################################​
-# CakePHP 2.1 installation from source ​  ​#+# CakePHP 2.1 installation from source ​                #
 ################################################################​ ################################################################​
  
Linha 137: Linha 159:
 </​code>​ </​code>​
  
-E crie outro arquivo chamado ​"apache_default", com o conteúdo abaixo:+E crie outro arquivo chamado ​''​apache_default''​, com o conteúdo abaixo:
  
 <​code>​ <​code>​
Linha 187: Linha 209:
  
 # construindo a docker... pode demorar um pouco dependendo da sua conexão com a Internet # construindo a docker... pode demorar um pouco dependendo da sua conexão com a Internet
-docker-compose build+sudo docker-compose build
  
 # subindo a docker e colocando-a em background # subindo a docker e colocando-a em background
-docker-compose up -d+sudo docker-compose up -d
 </​code>​ </​code>​
  
sistema_academico/criacao_de_ambiente_de_desenvolvimento.1566499930.txt.gz · Última modificação: 2019/08/22 14:52 por Carlitos