- PHP (+ composer)
- Nginx
- MySQL
- NPM (disposable|removable)
-
Clone repository
-
Go to folder with cloned repository.
-
Run
docker-compose up -d --build
-
Remove
README.md
file from./src
folder and place your code to./src
folder4.1. With git
git clone https://github.com/user/repo.git ./src
docker-compose exec app composer install
4.2. Create new project with composer
docker-compose exec app composer create-project laravel/laravel ./
-
Setup database connection in your
.env
file:DB_CONNECTION=mysql DB_HOST=mysql DB_PORT=3306 DB_DATABASE=laravel DB_USERNAME=laravel DB_PASSWORD=secret
-
Run migrations:
docker-compose exec app php artisan migrate
Now your application available by http://localhost:8080
docker-compose exec app composer [composer_command]
docker-compose exec app php [options] [-f] <file> [--] [args...]
docker-compose exec app php artisan [artisan_command]
Container is created to execute a npm command and will be removed after command execution.
docker-compose run -rm npm install
docker-compose run -rm npm run dev
docker-compose run -rm npm run watch-poll
Named volumes are used here. Physically located in /var/lib/docker/volumes/
. Available to users with sudo
rights.
- volumes list -
docker volume ls
- inspect volume -
docker volume inspect test_mysqldbvolume