This repository provides you a development environment without requiring you to install PHP, a web server, and any other server software on your local machine. For this, it requires Docker and Docker Compose.
-
Install docker and docker-compose ;
-
Copy
docker-compose.ymlfile to your project root path, and edit it according to your needs ; -
From your project directory, start up your application by running:
docker-compose up- If you want, you can run composer or artisan through docker. For instance:
docker-compose exec php composer install
docker-compose exec php php artisan migrate
docker-compose exec php $yourCommandHereThese docker images are configured in docker-compose.yml file.
You can comment or uncomment some services according to your project.
jguyomard/laravel-php:7.3(this docker image extendsphp:7.3-fpm-alpineto add some PHP extensions) ;jguyomard/laravel-nginx:1.13(this docker image extendsnginx:1.13-alpineto add Laravel vhost) ;mysql:5.7;postgres:9.6-alpine;redis:4.0-alpine;elasticsearch:5.5-alpine.
This repository also comes with a caspistrano docker image: jguyomard/laravel-capistrano:3.9.
For ease of use, you can create a bash alias:
alias cap='docker run --rm --user cap -v "$PWD":/src -v "$(dirname $SSH_AUTH_SOCK)":"$(dirname $SSH_AUTH_SOCK)" -e SSH_AUTH_SOCK="${SSH_AUTH_SOCK}" jguyomard/laravel-capistrano:3.9 cap'
Contributions are welcome! Leave an issue on Github, or create a Pull Request.
This work is under MIT licence.