Font size
WorksheetsVTI - Docker, K8s
Total questions: 75
Worksheet time: 1hrs 15mins
Docker là gì?
Một ngôn ngữ lập trình mới
Một dịch vụ lưu trữ đám mây
Một hệ điều hành
Một nền tảng để phát triển, vận chuyển và chạy ứng dụng bằng container
Docker Image là gì?
Một file cấu hình cho máy chủ
Một máy ảo hoàn chỉnh
Một bản snapshot của container
Một mẫu không thay đổi dùng để tạo container
Docker Container là gì?
Một loại phần mềm antivirus
Một bản sao của Docker Image đã được chạy
Một công cụ quản lý mạng
Một module lập trình
Lệnh docker ps dùng để làm gì?
Dừng một container
Tạo một image mới
Hiển thị danh sách các container đang chạy
Xóa tất cả container
Lệnh nào dùng để build Docker image từ Dockerfile?
docker run
docker pull
docker start
docker build
Dockerfile dùng để làm gì?
Lưu trữ dữ liệu trong container
Thiết lập các thông số bảo mật
Cấu hình hệ thống mạng
Tự động tạo Docker image
Lệnh nào dùng để xóa một container?
docker stop
docker kill
docker delete
docker rm
Port mặc định của Docker daemon là gì?
443
2375
8080
5000
Docker Compose dùng để làm gì?
Tăng hiệu suất của container
Tự động cập nhật Docker
Quản lý nhiều container như một dịch vụ
Xác thực người dùng
Lệnh nào tạo và chạy container mới từ image?
docker init
docker start
docker exec
docker run
Volume trong Docker dùng để?
Lưu trữ dữ liệu ngoài container để không mất khi container bị xóa
Thêm RAM cho container
Giám sát log hệ thống
Tạo file backup
Làm cách nào để tải image từ Docker Hub?
docker push
docker get
docker fetch
docker pull
Lệnh docker logs dùng để?
Theo dõi tiến trình khởi động container
Ghi log của Docker daemon
Hiển thị log của một container cụ thể
Xóa log hệ thống
Làm sao để dừng một container đang chạy?
docker pause
docker remove
docker restart
docker stop
Câu lệnh nào dùng để chạy container ở chế độ nền (background)?
docker run -f
docker run -b
docker run -it
docker run -d
Bạn muốn chạy một container mới từ image nginx và ánh xạ cổng 8080 trên host đến 80 trong container. Lệnh nào đúng?
docker run nginx -p 80:8080
docker run -p 8080:80 nginx
docker start -p 8080:80 nginx
docker create nginx -p 8080:80
Lệnh nào dùng để liệt kê tất cả các container, kể cả đã dừng?
docker ps -q
docker ps --all
docker list --all
docker containers --a
Bạn muốn chạy container ở chế độ tương tác, có thể gõ lệnh bên trong. Lệnh nào đúng?
docker run -d
docker r
Bạn muốn chạy container ở chế độ tương tác, có thể gõ lệnh bên trong. Lệnh nào đúng?
docker run -d
docker run -p
docker run -it
docker run -rm
Làm sao để xóa một image có tên myapp?
docker delete myapp
docker image remove myapp
docker rmi myapp
docker img rm myapp
Bạn muốn mount thư mục /data trên máy host vào container tại /app/data, lệnh nào đúng?
docker run -v /app/data:/data myimage
docker run -v /data:/app/data myimage
docker mount /data:/app/data myimage
docker attach -v /data:/app/data myimage
Làm sao để tạo một Dockerfile đơn giản chạy lệnh echo "Hello Docker" khi khởi động?
FROM alpine CMD echo "Hello Docker"
BASE alpine RUN echo "Hello Docker"
OS alpine ENTRYPOINT echo Hello
ENV alpine CMD "Hello Docker"
Bạn muốn tạo một volume tên là mydata, lệnh đúng là?
docker make volume mydata
docker create volume mydata
docker volume create mydata
docker build volume mydata
Lệnh docker exec -it container_name bash dùng để?
Chạy container mới
Gắn volume vào container
Tạo image từ container
Mở bash shell trong container đang chạy
Lệnh nào hiển thị thông tin hệ thống Docker (version, storage, containers...)?
docker logs
docker info
docker version --all
docker status
Bạn đang dùng Docker Compose. Lệnh nào để khởi động tất cả dịch vụ trong file docker-compose.yml?
docker compose init
docker-compose up
docker-compose run
docker-compose build
Muốn container tự xóa sau khi dừng, thêm flag nào?
--rm
--clean
--reset
--remove
Bạn muốn export image myimage ra file myimage.tar, lệnh đúng là?
docker save -o myimage.tar myimage
docker backup myimage myimage.tar
docker export myimage > myimage.tar
docker extract myimage -o myimage.tar
Lệnh docker-compose down có tác dụng gì?
Chỉ dừng container
Dừng và xóa container, mạng, volume do Compose tạo ra
Xóa file YAML
Reset Docker engine
Bạn dùng Dockerfile để cài Node.js, câu nào đúng?
FROM node
BASE node
INSTALL node
SOURCE node
Câu lệnh để đẩy image myapp lên Docker Hub?
docker export myapp
docker push myapp
docker upload myapp
docker send myapp
Kubernetes là gì?
Một hệ điều hành dành cho server
Một công cụ CI/CD
Một nền tảng điều phối container mã nguồn mở
Một hệ thống giám sát ứng dụng
Thành phần nào trong K8s chịu trách nhiệm quản lý trạng thái cụm (cluster)?
Thành phần nào trong K8s chịu trách nhiệm quản lý trạng thái cụm (cluster)?
Pod
Node
kubelet
kube-apiserver
Một Pod trong K8s có thể chứa gì?
Chỉ một container
Một hoặc nhiều container chia sẻ network và storage
Một service
Một node
Lệnh nào dùng để xem tất cả Pod trong namespace mặc định?
kubectl list pod
kubectl get pods
kubectl show pods
kubectl pods all
Kubernetes Service có chức năng gì?
Lưu trữ dữ liệu
Quản lý user
Phân phối lưu lượng đến các Pod
Quản lý container image
ReplicaSet trong Kubernetes dùng để làm gì?
Triển khai Pod
Đảm bảo số lượng Pod luôn đúng như mong muốn
Quản lý node
Cấu hình volume
Lệnh kubectl apply -f deployment.yaml dùng để?
Xóa một deployment
Kiểm tra cấu trúc file YAML
Tạo hoặc cập nhật tài nguyên theo file YAML
Xem log của Pod
ConfigMap dùng để làm gì trong Kubernetes?
Chứa biến môi trường, config cho ứng dụng
Lưu log
Lưu mật khẩu
Cấu hình mạng
Thành phần nào quản lý việc lên lịch cho Pod đến Node thích hợp?
etcd
Kubelet
kube-scheduler
kubectl
Namespace trong K8s giúp gì?
Lưu trữ dữ liệu
Quản lý role người dùng
Phân chia tài nguyên giữa các nhóm người dùng hoặc ứng dụng
Giảm tiêu thụ RAM
Lệnh nào dùng để mô tả chi tiết một Pod?
kubectl info pod
kubectl show pod
kubectl describe pod [tên_pod]
kubectl details pod
Tài nguyên nào trong K8s giúp cập nhật container mà không downtime?
Pod
ConfigMap
Deployment
ReplicaSet
ClusterIP trong Kubernetes là gì?
Địa chỉ IP nội bộ để giao tiếp giữa các Pod
Địa chỉ IP công cộng
IP của node
IP để truy cập K8s Dashboard
Thành phần lưu trữ cấu hình toàn bộ cụm Kubernetes là?
kube-proxy
controller-manager
kube-apiserver
etcd
Làm sao để forward port từ Pod ra host?
kubectl route
kubectl connect
kubectl port-forward pod-name 8080:80
kubectl open-port pod-name
Bạn muốn tạo một Pod từ file nginx-pod.yaml. Lệnh nào đúng?
kubectl create nginx-pod.yaml
kubectl init -f nginx-pod.yaml
kubectl run -f nginx-pod.yaml
kubectl apply -f nginx-pod.yaml
Để xem log của Pod tên là web-pod, bạn dùng lệnh nào?
kubectl pod logs web-pod
kubectl view log web-pod
kubectl logs web-pod
kubectl get logs web-pod
Muốn scale deployment my-deploy lên 5 replicas, lệnh đúng là?
kubectl resize deployment my-deploy --replicas=5
kubectl scale deployment my-deploy --replicas=5
kubectl replicate my-deploy 5
kubectl extend my-deploy -r 5
Bạn muốn tạo một ConfigMap từ file app.properties. Lệnh đúng là?
kubectl config create app-config --from=app.properties
kubectl create configmap app-config --from-file=app.properties
kubectl make configmap app-config=app.properties
kubectl add config --file app.properties
Muốn xoá một Pod tên là temp-pod, bạn dùng lệnh nào?
kubectl delete pod temp-pod
kubectl remove temp-pod
kubectl drop pod temp-pod
kubectl kill pod temp-pod
Bạn muốn chạy một Pod tạm thời để kiểm tra DNS, lệnh nào đúng?
kubectl debug busybox -- sh
kubectl exec busybox
kubectl run busybox --image=busybox --rm -it -- sh
kubectl create busybox pod
File YAML nào sẽ tạo một Pod có image là nginx:latest?
image: nginx
image: nginx:latest
container: nginx:1.20
version: latest
Bạn muốn expose Deployment api-deploy thành một service ClusterIP, dùng lệnh nào?
kubectl expose pod api-deploy --type=ClusterIP
kubectl expose deployment api-deploy --type=ClusterIP --port=80
kubectl publish api-deploy --port=80
kubectl connect api-deploy --internal
Muốn forward cổng 8080 trên máy tới Pod app-pod đang nghe cổng 80, lệnh nào đúng?
kubectl forward app-pod 8080:80
kubectl port-forward app-pod 8080:80
kubectl map-port app-pod 8080-80
kubectl proxy-port app-pod 8080-80
Muốn hiển thị tất cả Pod trong namespace test, dùng lệnh nào?
kubectl get pods --ns=test
kubectl pods -n test
kubectl get pods -n test
kubectl get all test
Bạn muốn apply một Secret từ cặp key-value, lệnh nào đúng?
kubectl apply secret my-secret key=value
kubectl create secret generic my-secret --from-literal=key=value
kubectl generate secret my-secret key=value
kubectl add secret my-secret -k value
Trong một YAML file, phần spec.replicas: 3 nghĩa là gì?
Số port cần mở
Số lần lặp lại Pod
Số lượng replica mong muốn
Số node trong cụm
Câu lệnh nào dùng để cập nhật lại image cho deployment webapp?
kubectl update deployment webapp --image=nginx:latest
kubectl rollout webapp update
Pod là gì trong Kubernetes?
Một node vật lý
Một nhóm container có thể chia sẻ network và storage
Một dịch vụ
Một volume
Service với type NodePort dùng để?
Expose Pod ra ngoài cluster thông qua port của node
Giới hạn truy cập nội bộ cluster
Tạo configmap
Quản lý persistent volume
Ingress Controller trong Kubernetes dùng để?
Quản lý các PVC
Chuyển hướng lưu lượng HTTP đến service tương ứng
Theo dõi log
Kết nối các container bên trong pod
Persistent Volume (PV) là gì?
Một loại container đặc biệt
Một dịch vụ lưu trữ tạm thời
Tài nguyên lưu trữ trong cluster được cung cấp bởi admi
Chỉ dùng trong StatefulSet
Persistent Volume Claim (PVC) là gì?
Một yêu cầu truy cập tới volume từ Pod
Một log của volume
Một replica của volume
Một loại deployment
ReplicaSet khác gì với Pod?
ReplicaSet không cần YAML
ReplicaSet không kiểm soát Pod
ReplicaSet đảm bảo số lượng Pod luôn đạt yêu cầu
ReplicaSet là một node đặc biệt
StatefulSet phù hợp nhất cho ứng dụng nào?
Web server không lưu trạng thái
Cron job
Database cần lưu trữ và định danh cố định
Load balancer
DaemonSet dùng để?
Chạy 1 Pod duy nhất trong cluster
Chạy một Pod trên tất cả các node
Tạo ingress rule
Phân quyền RBAC
Tài nguyên nào thường dùng để log hoặc giám sát (monitoring) ở cấp độ node?
ReplicaSet
CronJob
DaemonSet
Service
Khi dùng StatefulSet, thứ tự khởi động Pod như thế nào?
Ngẫu nhiên
Theo chữ cái
Từ Pod cuối lên đầu
Theo thứ tự tăng dần: 0 → n
Bạn muốn dùng volume có tên là data-volume, bước nào cần làm?
Tạo Deployment
Khai báo trong ConfigMap
Tạo PVC trỏ tới PV có tên data-volume
Tạo Pod có label data-volume
Ingress có thể route đến các Service dựa trên?
Node name
Container name
Port nội bộ
Path hoặc host trong HTTP request
Bạn muốn tạo Service nội bộ để các Pod khác gọi, nên dùng kiểu nào?
LoadBalancer
NodePort
ClusterIP
ExternalName
Lệnh nào giúp kiểm tra xem PVC đã được bind với PV chưa?
kubectl describe pod
kubectl get volumes
kubectl get pvc
kubectl status pv
Pod được xóa khỏi StatefulSet sẽ như thế nào?
Tự động tạo lại với tên mới
Bị xóa và không khôi phục
Tên cũ được giữ nguyên khi tạo lại
Chuyển thành Deployment
