Spring Boot và Docker
Đóng gói container với Docker: Dockerfile, multi-stage build, image được tối ưu, docker-compose, Spring profiles
1Layered JAR trong Spring Boot là gì?
Layered JAR trong Spring Boot là gì?
Câu trả lời
Layered JAR tổ chức nội dung JAR thành các lớp riêng biệt (dependencies, spring-boot-loader, snapshot-dependencies, application) để tối ưu hóa các build Docker. Mỗi lớp có thể được cache riêng, giúp tăng tốc đáng kể quá trình build lại vì chỉ những lớp bị thay đổi mới được build lại. Cách tiếp cận này giảm 80% thời gian triển khai trong môi trường production.
2Vai trò của Spring Boot Buildpacks là gì?
Vai trò của Spring Boot Buildpacks là gì?
Câu trả lời
Buildpacks tự động tạo các image Docker được tối ưu mà không cần Dockerfile. Chúng phát hiện loại ứng dụng, cài đặt runtime phù hợp, cấu hình các tối ưu hóa JVM và áp dụng các thực hành bảo mật tốt nhất. Cách tiếp cận này loại bỏ việc bảo trì Dockerfile thủ công và đảm bảo các image tuân thủ tiêu chuẩn ngành.
3Lệnh Dockerfile nào dùng để sao chép JAR vào image?
Lệnh Dockerfile nào dùng để sao chép JAR vào image?
Câu trả lời
Lệnh COPY chuyển các tệp từ hệ thống host vào image Docker. Đối với Spring Boot, ta thường dùng COPY target/*.jar app.jar để sao chép JAR đã được build. Lệnh này tạo một lớp mới trong image và hỗ trợ ký tự đại diện (wildcard) để linh hoạt hơn trong tên tệp.
Làm thế nào để expose một port trong Dockerfile?
Nên ưu tiên base image nào cho một container Spring Boot trong môi trường production?
+16 câu hỏi phỏng vấn
Các chủ đề phỏng vấn Spring Boot khác
Spring Core - IoC & DI
Spring Boot Auto-Configuration
Spring Boot Starters
Application Properties & YAML
Logging với SLF4J và Logback
Spring Boot DevTools
Spring MVC Basics
Spring REST Controllers
Request & Response Handling
Xử lý ngoại lệ
Bean Validation
Kiến thức cơ bản về Spring Data JPA
Thực thể JPA & Quan hệ
Truy vấn JPA
Spring Data Repositories
Cơ bản về Spring Security
Spring Boot Actuator
Kiểm thử đơn vị với JUnit & Mockito
Kiểm thử Spring Boot
Profiles và Environment
RestTemplate và WebClient
Async và Scheduling
Caching với Spring
Spring WebFlux (Reactive)
Giao dịch Spring
Xác thực và phân quyền nâng cao
JWT & Bảo mật Stateless
OAuth2 & Authorization Server
Microservices với Spring
Spring Cloud Config
Tối ưu hóa hiệu năng
GraalVM Native Images
Nắm vững Spring Boot 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í