Symfony

Deployment & DevOps

Docker, CI/CD, Deployer, biến môi trường, quản lý secrets, monitoring, logging

20 câu hỏi phỏng vấn·
Senior
1

File Docker nào được khuyến nghị để định nghĩa các service của một ứng dụng Symfony (PHP-FPM, Nginx, PostgreSQL) trong môi trường phát triển cục bộ?

Câu trả lời

Docker Compose (docker-compose.yml hoặc compose.yaml) cho phép định nghĩa và điều phối nhiều container Docker. Với Symfony, bạn thường định nghĩa một service PHP-FPM để chạy code, Nginx làm web server và PostgreSQL cho cơ sở dữ liệu. Cách tiếp cận này đảm bảo môi trường phát triển giống hệt nhau cho cả nhóm và gần với production.

2

Làm thế nào để định nghĩa đúng biến môi trường DATABASE_URL trong Symfony để nó khác nhau giữa môi trường phát triển và production?

Câu trả lời

Symfony sử dụng file .env cho các giá trị mặc định và .env.local cho các ghi đè cục bộ (không được version). Trong production, nên định nghĩa biến trực tiếp qua môi trường hệ thống hoặc secrets của server. File .env.local không bao giờ được commit và cho phép mỗi lập trình viên có cấu hình riêng của mình.

3

Lệnh Symfony nào cho phép quản lý secrets một cách an toàn trong production (API key, mật khẩu)?

Câu trả lời

Symfony Secrets cho phép lưu trữ dữ liệu nhạy cảm dưới dạng được mã hóa. Các secrets được lưu trong config/secrets/ và mã hóa bằng một khóa. Lệnh secrets:set thêm một secret mới, và chỉ môi trường có khóa giải mã mới đọc được các giá trị. Đây là phương pháp được khuyến nghị cho credentials trong production.

4

Deployer là gì và nó mang lại lợi thế chính nào cho việc triển khai ứng dụng Symfony?

5

Trong một pipeline CI/CD cho Symfony, trình tự được khuyến nghị của các bước chính là gì?

+17 câu hỏi phỏng vấn

Nắm vững Symfony cho lần phỏng vấn tiếp theo

Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.

Bắt đầu miễn phí