Hướng dẫn ext exif php docker
Mở đầuỞ thời điểm hiện tại mà các hệ thống mới có khuynh hướng sử dụng kiến trúc Microservice, nhà nhà người người nhắc về Docker như một giải pháp hàng đầu để mang lại hiệu năng tốt nhất cho ứng dụng của mình. Docker không chỉ mang lại nhiều giá trị cho các hệ thống trên môi trường Production mà khi ta tận dụng nó cho môi trường Dev, rất nhiều lợi ích được Docker đem lại như: Show
Sử dụng Docker để xây dựng môi trường phát triển cho ứng dụng LaravelDocker ComposeTrong những năm qua, Docker trở thành 1 giải pháp thường xuyên được sử dụng để triển khai nhanh các ứng dụng nhờ vào đơn giản hóa việc chạy và triển khai các ứng dụng trong container. Khi chúng ta sử dụng LEMP, ví dụ, với PHP, Nginx, Mysql và Laravel framework, Docker có thể đơn giản hóa quá trình thiết lập. Docker Compose đã đơn giản hóa hơn nữa quá trình phát triển bằng cách cho phép các nhà phát triển xác định cơ sở hạ tầng của họ, bao gồm các application services, networks và volumes trong một file duy nhất. Docker Compose cung cấp một giải pháp thay thế hiệu quả để chạy nhiều lệnh tạo Docker container. Trong hướng dẫn này, chúng ta sẽ xây dựng một ứng dụng web Laravel, với Nginx là máy chủ web và MySQL là cơ sở dữ liệu, tất cả bên trong các Docker container. Bạn sẽ xác định toàn bộ cấu hình trong 1 file Bắt đầu thôiiiTrước tiên chúng ta cần cài đặt Docker và Docker Compose trên máy host trước. PHPChúng ta cần clone Laravel app từ Github về
Thông thường thì ta sẽ cần cài composer trên máy host và dùng composer để tải về project laravel mới như hướng dẫn trên offical https://laravel.com/docs/8.x/installation#installing-laravel . Tuy nhiên với mình thì so với việc dùng Docker thì việc cài đặt composer nói riêng và quản lý version php hay composer trên máy host nói chung cũng hơi mất công một chút, nên mình tạo một Docker container riêng cho việc này, chứa Composer và install với cấu hình theo ý mình. Mình chỉ init dự án bằng repository của Laravel từ Github thôi. Còn Composer và PHP sẽ do Docker lo
Trong Dockerfile trên có thực thi luôn việc chạy
NginxTa sẽ cần 1 web service để xử lý các request đến và đưa đến cho Laravel xử lý. Ngoài Nginx ta có thể chọn Apache. Trong bài này, mình chọn Nginx.
Trong Dockerfile của Nginx mình sử dụng file cấu hình như này
Ở trên các bạn chú ý dòng
MysqlVới Mysql chúng ta không cần bổ sung file cấu hình quá nhiều, chỉ cần tạo trước 1 schema db_test cho dự án bằng file SQL thôi
docker-compose.ymlBên trên là các Dockerfile và file cấu hình cho từng service PHP, Mysql, Nginx, cuối cùng
chúng ta cần xây dựng file
Vậy là hoàn thiện phần cấu hình, bây giờ bạn chạy
để build image và bật các container lên thôi. Sau khi chạy tất cả các service bật lên, chúng ta truy cập vào http://localhost:8080/ để xem thành quả
Tham khảo
|