Docker com laravel
Autor: Eurai Criado: 14/06/2024 Atualizado: 01/07/2024
#Comandos
DockerV1: docker compose build
DockerV2: docker-compose build
Buildar a img: docker compose build
Subir e rodar: docker compose up
Subir e rodar "deamon/background" docker compose up -d
Derrubar: docker compose up down
Container executando: docker ps
Docker Listar: docker ps -a
Renomear name: docker rename "name" "novonome"
Docker Iniciar: docker start "Id" ou "name"
Docker exec: docker exec "Id" ou "name" ps -ef (precisa estar em execucao)
Docker Entrar: docker attach "Id" ou "name"
Docker Sair: exit
Docker Remover: docker rm -f "id" ou "name"
Docker Remover Images: docker rmi -f "id" ou "name"
Docker Images: docker images
Limpar todas imagens "Format": docker system prune
Limpar "geral": docker system prune --all --force --volumes
Remover rede: docker network rm [rede]
Inspecionar rede: docker network inspect [rede]
Desconectar rede: docker network disconnect [container_id]
Limpeza completa:
docker container prune -f
docker image prune -a -f
docker volume prune -f
docker network prune -f
docker system prune -a -f
Caso utilize o mysql/mariadb local, precisa mapear a porta, exemplo:
Porém no .env do laravel, modificar a linha:
Lentidão na sincronização de docker/volumes:
Realizado teste com volumes e bind-mount, para desenvolvimento sincronizar a pasta de fonte com o docker, obteve lentidão de 850ms até 1.7s
Para contorno, adicionar a tag no dockerfile:
Ao invés de subir o comando com docker-compose up ou docker-compose up --build, utilizar o docker-compose watch (Ctrl+C para cancelar)
Se deixar ativo (descomentado) o volumes, ainda há problema mesmo subindo com docker-compose watch
Também funciona com (Depreciado, utilizar develop):
Exemplo de .bat (windows) para subir os serviços automaticamente. NPM RUN DEV ou outro (php artisan serve),
Banco de dados.
Utilizado o programa "HEIDI" é possível realizar backup de um banco para outro diretamente. Imagem abaixo
Fontes:
- https://www.youtube.com/watch?v=R2lS_rORCQE
- https://docs.docker.com/compose/file-watch/
- https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers
Gostou? Compartilhe com seus amigos e deixe um comentário! 😎
Um abraço, e até a próxima