Jo1oPedro / missing-pets

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Sobre

  • Repositório da Api responsável pelo projeto missing pets.
  • Com o foco em auxiliar as pessoas, aprender e melhorar nas tecnologias:
    - PHP, 
    - Swoole, 
    - Laravel,
    - Laravel Octane
    - Redis, 
    - Rabbitmq 
    - SQL.
    
  • Link para o repositório contendo o front do projeto: -

Hospedagem

Repositório da Imagem Docker:

Conteúdo da Imagem Docker

  • PHP, e diversas extensões e Libs do PHP, incluindo php-redis, mysql, swoole, memcached.

  • Nginx, como proxy reverso/servidor. Por fim de testes é que o Nginx está presente nesta imagem, em um momento de otimização está imagem deixará de ter o Nginx.

  • Supervisor, indispensal para executarmos a aplicação PHP e permitir por exemplo a execução de filas e jobs.

  • Composer, afinal de contas é preciso baixar as dependências mais atuais toda vez que fomos crontruir uma imagem Docker.

Passo a Passo para execução

Certifique-se de estar com o Docker em execução.

docker ps

Certifique-se de ter o Docker Compose instalado.

docker compose version

A listagem de pastas do projeto deve ficar:

    app/
    docker/
    .gitignore
    docker-compose.yml
    readme.md

Certifique-se que sua aplicação Laravel ficou em ./app e que existe o seguinte caminho: /app/public/index.php

Certifique-se que sua aplicação Laravel possuí um .env e que este .env está com a APP_KEY= definida com valor válido.

Contruir a imagem Docker, execute:

docker compose build

Caso não queira utilizar o cache da imagem presente no seu ambiente Docker, então execute:

docker compose build --no-cache

Para subir a aplicação, execute:

docker compose up
  • Para rodar o ambiente sem precisar manter o terminar aberto, execute:
docker compose up -d

Para derrubar a aplicação, execute:

docker compose down

Para entrar dentro do Container da Aplicação, execute:

docker exec -it web bash

Solução de Problemas

Problema de permissão

  • Quando for criado novos arquivos, ou quando for a primeira inicialização do container com a aplicação, pode então haver um erro de permissão de acesso as pastas, neste caso, entre dentro do container da aplicação e execeute.
cd /var/www && \
chown -R www-data:www-data * && \
chmod -R o+w app

About

License:MIT License


Languages

Language:PHP 79.0%Language:Blade 16.1%Language:HTML 2.6%Language:Dockerfile 1.2%Language:JavaScript 0.5%Language:PowerShell 0.3%Language:Shell 0.3%Language:CSS 0.1%