1 - Criar e entrar no diretório do projeto
mkdir example-dir && cd example-dir
2 - Rodar o comando para criar o projeto Laravel
docker run -u ${UID}:${UID} --rm -v $(pwd):/app composer create-project --prefer-dist laravel/laravel .
Alternativo - Poderá também criar o projeto sem informar a pasta antes
docker run -u ${UID}:${UID} --rm -v $(pwd):/app composer create-project --prefer-dist laravel/laravel "nome_do_projeto"
3 - Copiar os arquivos docker-compose.yml, Dockerfile e a pasta .docker para dentro do diretório do projeto
4 - Rodar o comando para criar o container
docker compose up -d
5 - Acessar o container
docker compose exec php bash
6 - Rodar o comando para instalar as dependências do Laravel
composer install
7 - Rodar o comando para criar a chave do Laravel
php artisan key:generate
8 - Acessar o projeto no navegador
http://localhost:8080
- Rodar o container
docker compose up -d
- Acessar o container
docker compose exec php bash
- Parar o container
docker compose down
- Ver os containers rodando
docker ps
- Ver os containers parados
docker ps -a
- Ver os volumes
docker volume ls
- Ver as imagens
docker images
- Ver os logs do container
docker compose logs -f
- Ver os logs do container de forma específica
docker compose logs -f php
- Executar npm install
docker compose run --rm node npm install
- Instalar pacote composer
docker compose run --rm composer require "nome_do_pacote"
- Listar portas em uso
sudo lsof -i -P -n | grep LISTEN
-
Instalar dependências em projeto existente
docker run --rm \ -u "$(id -u):$(id -g)" \ -v "$(pwd):/var/www/html" \ -w /var/www/html \ laravelsail/php83-composer:latest \ composer install --ignore-platform-reqs
-
Instalar dependências em projeto existente com npm
docker run --rm \ -u "$(id -u):$(id -g)" \ -v "$(pwd):/var/www/html" \ -w /var/www/html \ laravelsail/node:latest \ npm install
sudo docker compose run -u root php bash
-
Instalar Portainer
docker run -d -p 9000:9000 -p 8000:8000 -p 9443:9443 \ --name portainer \ --restart=always \ -v /var/run/docker.sock:/var/run/docker.sock \ -v portainer_data:/data portainer/portainer-ce:latest