- Set up laravel for php/composer/nginx/mysql/phpmyadmin in a docker environment
- PHP (current)
- Composer
- Docker
- Git
- https://laradock.io/getting-started/#usage
- https://medium.com/@yavengy/getting-started-with-laravel-on-docker-cc280dae5e49
- https://medium.com/@bharatgupta_2334/how-to-develop-laravel-apps-with-laradock-locally-1329366eb352
- create base dir
projects
composer global require laravel/installer
laravel new project-1
cd project-1
vim .env
- change
DB_HOST=mysql
, password too
- change
- add to
/etc/hosts
->127.0.0.1 project-1.test
git clone https://github.com/Laradock/laradock.git
cd laradock
cp env-example .env
vim .env
- change the root password for mysql
cd laradock/nginx/sites
cp laravel.conf.example project_1.conf
(name isn't important other than for organization)vim project_1.conf
- make two changes:
server_name project-1.test; root /var/www/project-1/public;
cd laradock
docker-compose up -d nginx mysql phpmyadmin
docker-compose exec workspace bash
to enter container shellcd project-1
artisan key:generate
exit
back to local shell
cd project-1
sudo chmod -R 777 storage bootstrap/cache
, some folders need to be writable to web server user
cd laradock
docker-compose exec mysql bash
enter mysql containermysql -uroot -p
enter password- mysql>
create database project1;
- mysql>
exit
- mysql>
exit
cd project-1
vim .env
- change
DB_DATABASE=project1
- change
cd laradock
docker-compose exec workspace bash
- container>
cd project-1
- container>
artisan migrate
- container>
- http://laravel-blog.test/ should work to the test page
- http://laravel-blog.test:8081/ should work to phpmyadmin