Mở đăng ký khóa học Fullstack qua Zoom. Tham khảo tại đây

Thư Viện Câu Hỏi Phỏng Vấn

Tổng hợp các câu hỏi tuyển dụng thực tế theo nhiều cấp độ từ Entry đến Expert để bạn tự tin chinh phục nhà tuyển dụng.

Interactive Practice Tổng cộng 4,442 câu hỏi độc bản

Luyện Tập Phỏng Vấn Thử

Mô phỏng áp lực phỏng vấn thật với đồng hồ đếm ngược từng câu, tự đánh giá phản xạ và đo lường độ sẵn sàng của bạn.

Vui lòng đăng nhập để tham gia luyện tập và lưu tiến độ phỏng vấn.
Khóa học Chuyên sâu Docker

Khóa học DevOps & Docker Thực Chiến

Hệ thống khóa học thực chiến chuẩn Enterprise giúp bạn tự tin chinh phục mọi kỳ phỏng vấn kỹ thuật và thăng tiến thu nhập.

01

Trong Dockerfile, tại sao việc sử dụng USER thay vì chạy ứng dụng dưới quyền root lại là một yêu cầu bắt buộc trong môi trường Enterprise?

Junior

Việc chạy container với quyền root mặc định tiềm ẩn rủi ro bảo mật nghiêm trọng. Nếu ứng dụng bị khai thác lỗ hổng (như Remote Code Execution), kẻ tấn công có thể chiếm quyền điều khiển toàn bộ container và thậm chí là host thông qua các kỹ thuật thoát container (container breakout).

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
02

Sự khác biệt giữa Docker Bind Mounts và Docker Volumes là gì, và khi nào nên ưu tiên sử dụng Volumes cho dữ liệu ứng dụng?

Junior

Cả hai đều dùng để lưu trữ dữ liệu bền vững, nhưng có sự khác biệt về cơ chế quản lý:

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
03

Giải thích khái niệm Docker Context và tại sao việc thiết lập thư mục làm việc (Working Directory) đúng cách lại quan trọng đối với hiệu năng build?

Junior

Docker Context là tập hợp các file và thư mục mà Docker Daemon nhận được khi thực hiện lệnh docker build.

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
04

Khi triển khai ứng dụng, tại sao việc sử dụng tag 'latest' cho Docker Image lại bị coi là một thực hành tồi (bad practice) trong môi trường Enterprise?

Junior

Sử dụng tag 'latest' tạo ra sự không nhất quán (non-deterministic) trong quá trình triển khai.

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
05

Làm thế nào để sử dụng Multi-stage Builds trong Dockerfile nhằm tối ưu hóa kích thước của Docker Image cho ứng dụng Node.js, và cơ chế này hoạt động như thế nào?

Junior

Bản chất cơ chế Multi-stage Builds

Multi-stage builds cho phép sử dụng nhiều câu lệnh FROM trong một file Dockerfile duy nhất. Mỗi lệnh FROM bắt đầu một giai đoạn mới của quá trình build với một base image mới. Điểm cốt lõi là bạn có thể sao chép các tệp tin cần thiết từ giai đoạn trước sang giai đoạn hiện tại, trong khi bỏ lại toàn bộ các công cụ phát triển (như devDependencies, gcc, mã nguồn gốc không cần thiết) ở các giai đoạn trước.

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
06

Sự khác nhau giữa lệnh COPY và ADD trong Dockerfile là gì, và tại sao các chuyên gia thường khuyến nghị ưu tiên sử dụng COPY trong hầu hết các trường hợp?

Junior

Phân tích chi tiết sự khác nhau

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
07

Làm thế nào để sử dụng tệp .dockerignore một cách hiệu quả nhằm tối ưu hóa quá trình xây dựng Docker Image và bảo mật thông tin?

Junior

Bản chất và vai trò của .dockerignore

Tệp .dockerignore hoạt động tương tự như tệp .gitignore trong hệ thống quản lý mã nguồn Git. Nó cho phép chỉ định danh sách các tệp tin và thư mục không nên được gửi đến Docker Daemon khi thực hiện lệnh docker build.

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
08

Làm thế nào để cấu hình và sử dụng Docker Volumes cho cơ sở dữ liệu nhằm đảm bảo tính bền vững của dữ liệu khi container bị xóa hoặc khởi động lại?

Junior

Bản chất vấn đề lưu trữ trong Docker

Mặc định, mọi dữ liệu được tạo ra bên trong một container đều được lưu trữ trong lớp ghi đè (Writable Layer) của container đó. Khi container bị xóa (docker rm), toàn bộ dữ liệu này sẽ bị mất vĩnh viễn. Đối với các ứng dụng lưu trữ trạng thái như Cơ sở dữ liệu (MySQL, PostgreSQL), điều này là không thể chấp nhận được.

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
09

Làm thế nào để kiểm tra và khắc phục tình trạng phân mảnh hoặc cạn kiệt dung lượng ổ đĩa do các lớp (layers) và bộ nhớ đệm (build cache) của Docker gây ra trên máy chủ phát triển?

Junior

Trong quá trình phát triển ứng dụng với Docker, việc build image liên tục sẽ sinh ra rất nhiều các lớp trung gian, dangling images (các image không có thẻ tag) và bộ nhớ đệm build cache. Điều này dẫn đến việc ổ đĩa của Docker Host nhanh chóng bị cạn kiệt dung lượng.

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
10

Sự khác nhau cơ bản giữa lệnh 'CMD' và 'ENTRYPOINT' trong Dockerfile là gì, và trong trường hợp nào nên kết hợp cả hai lệnh này khi xây dựng image cho ứng dụng?

Junior

Trong Dockerfile, cả CMD và ENTRYPOINT đều được sử dụng để định nghĩa câu lệnh sẽ được thực thi khi một container được khởi động từ image. Tuy nhiên, cách chúng hoạt động và tương tác với các tham số dòng lệnh từ bên ngoài là hoàn toàn khác nhau.

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
11

Làm thế nào để xử lý tình trạng container không thể kết nối tới cơ sở dữ liệu chạy trên máy chủ (Docker Host) hoặc trên một container khác thông qua tên miền nội bộ (Hostname)?

Junior

Trong quá trình phát triển ứng dụng phân tán, lỗi kết nối mạng giữa container ứng dụng và cơ sở dữ liệu rất phổ biến đối với các lập trình viên cấp độ Junior.

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
12

Làm thế nào để cấu hình Health Check cho một Docker container và tại sao tính năng này lại quan trọng trong việc xây dựng hệ thống chịu lỗi cao (Fault Tolerance)?

Junior

Trong các hệ thống phân tán, việc biết một container đang ở trạng thái 'Running' (tiến trình chính đang chạy) chưa đủ để khẳng định ứng dụng bên trong đã sẵn sàng phục vụ người dùng hay chưa (ví dụ: ứng dụng đang trong quá trình khởi động, kết nối DB bị lỗi, hoặc bị treo luồng xử lý).

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
13

Làm thế nào để xử lý sự cố container bị dừng đột ngột với mã lỗi Exit Code 137 khi chạy các ứng dụng trong Docker, và cách khắc phục triệt để ở cấp độ Junior?

Junior

Bản chất vấn đề

Exit Code 137 cho biết container đã bị kernel của hệ điều hành chấm dứt đột ngột bằng tín hiệu SIGKILL. Nguyên nhân phổ biến nhất là do container đã vượt quá giới hạn bộ nhớ được cấp phép và kích hoạt cơ chế OOM (Out Of Memory) Killer của Linux.

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
14

Làm thế nào để thiết lập kết nối mạng giữa hai container độc lập sử dụng User-defined Bridge Network trong Docker?

Junior

Bản chất vấn đề

Mặc định khi sử dụng mạng mặc định (bridge network), các container không thể phân giải tên miền (DNS resolution) của nhau trừ khi dùng cơ chế --link đã lỗi thời. Để các container có thể giao tiếp an toàn thông qua tên container, chúng ta cần tạo một User-defined Bridge Network.

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
15

Sự khác nhau cốt lõi giữa Bind Mounts và Volumes trong Docker là gì, và khi nào nên sử dụng loại nào cho môi trường phát triển và sản xuất?

Junior

Bản chất vấn đề

Cả Bind Mounts và Volumes đều cho phép container lưu trữ dữ liệu bền vững trên máy chủ vật lý (host machine), nhưng cơ chế quản lý và vị trí lưu trữ hoàn toàn khác nhau.

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
High-Ticket Mentoring
Cần Mentor Phỏng Vấn Thử 1-1 & Tối Ưu CV?

Mô phỏng phỏng vấn kỹ thuật thực tế 1-1 qua Google Meet, nhận xét chi tiết điểm mạnh/yếu và sửa CV trực tiếp cùng giảng viên Unicode.

AI Resume Scanner
Kiểm Tra CV Chuẩn ATS Miễn Phí

Tải CV của bạn lên để hệ thống AI rà soát từ khóa kỹ năng, định dạng và tính điểm chuẩn nhà tuyển dụng.

vừa nâng cấp PRO khóa 1 phút trước   Tìm hiểu khóa học