/docker-laravel

Ambiente completo de desenvolvimento Laravel em Docker.

Primary LanguageDockerfile

Ambiente Laravel para Docker

šŸ’» Ambiente

Ambiente completo de desenvolvimento Laravel.

  • NGINX
  • PHP 7
  • MySQL 5
  • phpMyAdmin
  • Composer

šŸš€ ExecuĆ§Ć£o

PrƩ-requisitos:

  • Docker e Docker Compose.
  • NĆ£o ter nenhuma aplicaĆ§Ć£o executando nas portas 8080, 8081, 3306 e 9000.

InstalaĆ§Ć£o do Docker e Docker Compose:

No Ubuntu:

# Para executar o Docker sem SUDO:
$ sudo usermod -aG docker $USER

Como executar o ambiente:

# Clona a aplicaĆ§Ć£o do GitHub
$ git clone https://github.com/leonardopigatto/docker-laravel.git

# Acessa a pasta
$ cd docker-laravel

# Remove o arquivo .gitkeep da pasta src
$ rm -f src/.gitkeep

# Constroi e reconstroi os containers
$ sudo docker-compose build app

# Executa os containers (em background)
$ docker-compose up -d

# Encerra e remove os containers
$ docker-compose down

Como executar comandos:

# Comandos
$ docker-compose exec app ..... (Ex: composer install, php artisan key:generate, ...)

# Acesso ao Terminal
$ docker-compose exec app /bin/bash

Como criar/clonar/copiar uma aplicaĆ§Ć£o Laravel:

  • Clonar/copiar: Coloque todos os seus arquivos da aplicaĆ§Ć£o dentro da pasta src.

  • Criar uma nova aplicaĆ§Ć£o Laravel:

# Acessa a pasta src
$ cd src

# Cria um novo projeto Laravel
$ docker-compose exec app composer create-project laravel/laravel .

Acesso:

āš ļø Avisos

MySQL

  • Caso queira, mude o usuĆ”rio, senha e banco de dados no arquivo docker-compose.yml.

  • O MySQL estĆ” configurado de modo persistente, isto Ć©, quando executar o comando docker-compose down os dados nele armazenados serĆ£o mantidos no diretĆ³rio ./.docker/mysql, caso nĆ£o deseje utilizar esse recurso, basta excluir trecho de cĆ³digo abaixo do arquivo docker-compose.yml. Para excluir a pasta mysql Ć© preciso ter permissƵes sudo.

volumes:
  - ./.docker/mysql:/var/lib/mysql

phpMyAdmin

  • NĆ£o se esqueƧa de configurar o usuĆ”rio e senha no arquivo docker-compose.yml caso tenha alterado no MySQL.

.env do Laravel

  • Utilizar no campo DB_HOST=db e o usuĆ”rio e senha configurados no MySQL.