FresherKỹ thuậtDocker
Những lệnh Docker nào dùng để liệt kê container, đọc log và mở shell bên trong container?
Thử trả lời trước
Đáp án mẫu
Ba lệnh bao phủ phần lớn việc kiểm tra hằng ngày.
docker ps # running containers
docker ps -a # all containers, including stopped ones
docker logs -f --tail 100 web # follow the last 100 log lines
docker exec -it web sh # open a shell inside a running container
docker psliệt kê các container đang chạy cùng id, image, trạng thái và port. Thêm-ađể gồm cả container đã dừng, đó là cách tìm một container đã crash.docker logshiển thị những gì process chính ghi ra stdout và stderr.-ftheo dõi các dòng mới, còn--tailgiới hạn đầu ra.docker exec -itchạy một lệnh mới trong container đang chạy.-igiữ stdin mở và-tcấp một terminal. Dùngshnếu image không cóbash.
Liên quan: docker inspect web in ra toàn bộ cấu hình, và docker stats hiển thị mức dùng CPU và memory trực tiếp.
exec chỉ hoạt động với container đang chạy. Với container đã dừng, hãy đọc log, hoặc khởi động một container mới từ cùng image với shell làm entrypoint.
ps để tìm, logs để xem chuyện gì đã xảy ra, exec để nhìn vào bên trong.
Ý chính
- docker ps liệt kê container, và -a gồm cả container đã dừng
- docker logs hiển thị stdout và stderr, dùng -f để theo dõi
- docker exec -it mở shell trong container đang chạy
- exec cần container đang chạy
Câu hỏi nối tiếp thường gặp
- Làm sao lấy được shell trong một container liên tục bị crash?
Lỗi thường gặp
- Chỉ nhìn docker ps và bỏ sót các container đã crash
- Thử bash trong image chỉ có sh