This starter repo was born out of frustration of getting docker working with Laravel. Hopefully this will save you some headache!
First, clone the repo here: https://github.com/christopherarter/Quick-Laravel-Docker-Starter
Prerequisites:
- PHP 7.1 (minimum)
- Composer install guide
- Docker install guide
- Docker Compose install guide
Get started
- Clone this repo and navigate to the repo folder. Run
composer create-project --prefer-dist laravel/laravel my-app
- Run
mv my-app/* my-app/.* ./ && rm -rf my-app
- Change the values in your
.env
to the values below:
DB_CONNECTION=mysql
DB_HOST=laravel_db
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=laravel_user
DB_PASSWORD=myStrongPassword1234
The last step, run docker-compose up
When you run docker ps
, you should see your service running locally at http://localhost:9000
To run migrations and commands that interact with the database you need to be inside the laravel web app container.
Run docker ps
and get the id of the laravel web container. Next, run docker exec -it <container-id> /bin/bash
and you should be at /var/www/app
. You may now run artisan commands to interact with the database.
Connecting to your database with a database tool
To connect with this database using tools like MySQL Workbench, DB Beaver or TablePlus, you can access it with the 3305
port, username and password you specified in your .env
file.
Top comments (0)