lazydocker: quản lý container, compose, image, volume trong một màn hình terminal
Tóm tắt
lazydocker gom các lệnh docker hằng ngày vào một giao diện: m xem log, E vào shell, r restart, [ ] đổi tab Stats/Logs, b để dọn image và volume. Thao tác xoá là thật, đọc kỹ trước khi xác nhận.
Làm việc với Docker hằng ngày nghĩa là liên tục gõ docker ps, chép container ID, docker logs -f, docker exec -it ... sh, docker compose restart, rồi dọn image rác. Mỗi việc đơn giản nhưng cộng lại rất mất thời gian. lazydocker (cùng tác giả với lazygit) gom tất cả vào một giao diện terminal: thấy container, service compose, image, volume cùng lúc, xem log và biểu đồ CPU/RAM trực tiếp, và thao tác bằng một phím.

Cài đặt
brew install lazydocker # macOS
# Linux: script cài đặt trong README
curl https://raw.githubusercontent.com/jesseduffield/lazydocker/master/scripts/install_update_linux.sh | bash
go install github.com/jesseduffield/lazydocker@latest
lazydocker # chạy trong thư mục có docker-compose.yml để thấy cả service
Gợi ý: thêm alias lzd='lazydocker' vào .zshrc.
Bố cục màn hình
Bên trái là danh sách: Project, Services (của docker compose), Containers, Images, Volumes. Bên phải là khung chính với nhiều tab cho mục đang chọn: Logs, Stats (biểu đồ CPU, bộ nhớ), Env, Config, Top. Dùng [ và ] để chuyển tab, / để lọc danh sách, enter để vào khung chính.
Phím tắt chính
| Phím | Container | Service (compose) |
|---|---|---|
s | Dừng | Dừng |
r | Khởi động lại | Khởi động lại |
d | Xoá | Xoá container của service |
E | Mở shell bên trong (exec) | Mở shell bên trong |
a | Attach | Attach |
m | Xem log | Xem log |
w | Mở trình duyệt theo cổng đầu tiên | Mở trình duyệt |
u / U / D | — | Up service / up cả project / down cả project |
b | Lệnh hàng loạt | Lệnh hàng loạt |
Phím b (bulk commands) ở khung Images và Volumes rất hữu ích để dọn image không dùng (prune) khi ổ đĩa đầy.
Tuỳ chỉnh
- Nhấn
oở khung Project để mở file cấu hình,eđể sửa. - Thêm lệnh tuỳ chỉnh (custom commands) cho thao tác lặp lại, ví dụ chạy migration trong container, rồi gọi bằng phím
c. - Đổi lệnh compose mặc định nếu bạn dùng
docker compose(v2) thay vìdocker-composecũ.
Lưu ý
- lazydocker gọi Docker API với quyền của bạn; xoá container hay prune volume là thao tác thật, dữ liệu trong volume có thể mất.
- Không thay thế công cụ giám sát production: nó hợp cho máy dev và server nhỏ.
- Có thể chạy lazydocker trong container (README có lệnh
docker runmountdocker.sock), nhưng mount socket nghĩa là container đó có toàn quyền với Docker.
Áp dụng thế nào?
- Dev: Khi chạy stack nhiều service bằng compose, mở lazydocker để theo dõi log của từng service và restart nhanh service vừa sửa code.
- Tech Lead: Hướng dẫn dev mới dùng lazydocker để họ thấy trực quan các service tương tác, thay vì nhớ hàng loạt lệnh docker.
- PM: Giảm thời gian "dựng môi trường không lên được" của dev mới, vì lỗi của từng service hiện rõ ngay trong khung log.
Nguồn & tham khảo
- jesseduffield/lazydocker — jesseduffield (GitHub)