O projeto se utiliza de contêineres Docker, através do pacote Laravel Sail para facilitar a configuração do ambiente de desenvolvimento. Portanto, é necessário que já possua o Docker e o Docker Compose instalados na máquina.
Você é livre para rodar o projeto em ambiente local mas esse texto não tratará essa situação.
Links para instalação e configuração de Docker:
- Faça um clone do projeto para sua máquina local
- Crie um arquivo
.env, recomendamos usar.env-examplecomo base - Adicione ou altere as chaves conforme sua necessidade
- acesse a pasta do projeto via console (terminal/PowerShell/CMD)
- execute o comando:
docker run --rm \
-u "$(id -u):$(id -g)" \
-v "$(pwd):/var/www/html" \
-w /var/www/html \
laravelsail/php82-composer:latest \
composer install --ignore-platform-reqs- Após finalizado processamento, execute o comando
./sail up -d
O primeiro comando realiza a instalação dos pacotes via composer especificados no arquivo composer.json e uma vez que a instalação termina, a pasta vendor passa a ficar disponível no projeto. O comando seguinte levanta os contêineres baseado na descrição de serviços feita no arquivo docker-compose.yml.
Por padrão, não é necessária nenhuma configuração no arquivo .env do projeto. Caso seja necessária alguma edição na configuração padrão (relacionado a binding ports ou credenciais de banco de dados), basta editar o arquivo .env.
Uma vez que o projeto está rodando em cima de contêineres Docker, é clara a situação de que a máquina local não possui nenhum dos requisitos necessários para se trabalhar no projeto, assim, comandos como php artisan, composer ou npm não funcionarão localmente. Para executar comandos dentro de um dos contêineres do projeto, um php artisan route:list por exemplo, é preciso utilizar o docker para tal, como por exemplo:
docker-compose exec \ #execução de um comando num contêiner existente
-u sail \ # especifica o nome do usuário a ser utilizado dentro do contêiner
projeto_laravel.test \ # especifica qual contêiner receberá o comando
php artisan route:list # qual o comando a ser executadoA execução, dessa forma, se torna muito verbosa e trabalhosa, podendo levar a potenciais erros de execução. Assim, o Laravel Sail oferece um script chamado sail e localizado em vendor/bin/. Esse script permite que tais comandos sejam executados através de aliases para que o fluxo de desenvolvimento seja mais natural e menos complexo. Assim, para se executar o mesmo comando php artisan route:list com o script sail ficaria:
./vendor/bin/sail artisan route:list
#ou
./vendor/bin/sail art route:listPara conhecer os comandos disponíveis pelo script sail, execute ./vendor/bin/sail -h para obter a listagem completa das opções com descrição.
Migrations são uma maneira de versionar as tabelas de sua base de dados. Para estruturar o seu banco de dados
-
Execute
./vendor/bin/sail art migratepara montar sua adicionar as tabelas ao seu banco -
Execute
./vendor/bin/sail art db:seedpara popular o seu banco com dados fictícios
