Docker for Laravel

04/01/2022   Orthers

Docker for Laravel

1. structure
+ docker-compose.yml // delare all services:  services 
+ Dockerfile // run services for app php
+ php
    + laravel.ini  // config for php
+ mysql
    + my.cnf  //config for mysql
+ nginx
    + conf.d
        + app.conf  // config for server

2. Các lệnh
- clone project laravel: git clone https://github.com/laravel/laravel.git laravel-web
- install package by composer: docker run --rm -v $(pwd):/app composer install
- build container: docker-compose up -d
- access app container: docker-compose exec app bash
- generate for app: php artisan key:generate
- cache config: php artisan config:cache
- exit docker: ctrl+D
- change owner for user: sudo chown -R $USER:$USER ~/laravel-web
- update config laravel project: nano .env (DB_CONNECTION=mysql; DB_HOST=db; DB_PORT=3306; DB_DATABASE=laravel_web; DB_USERNAME=laraveldocker; DB_PASSWORD=pass)
- add user: GRANT ALL ON laravel_web.* TO 'laraveldocker'@'%' IDENTIFIED BY 'your_strong_laravel_docker_password'; 1 GRANT ALL ON laravel_web.* TO 'laraveldocker'@'%' IDENTIFIED BY 'your_strong_laravel_docker_password';
- changes to take effect in DB: FLUSH PRIVILEGES; 1 FLUSH PRIVILEGES;
- access db container: docker-compose exec db bash
- access db: mysql -u root -p  
- show all dbs: show databases;
- access app container: docker-compose exec app bash
- migrate db: php artisan migrate
- use tinker: php artisan tinker
- show tables: \DB::select('show tables'); 
- show db in tables: \DB::table('migrations')->get();

Bài viết cùng chủ đề