curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
docker info | grep Root
Kết quả đúng:
Docker Root Dir: /var/lib/docker
Mình có gặp trường hợp kết quả là:
Docker Root Dir: /var/snap/docker/common/var-lib-docker
Nó sẽ gây ra sự cố khi dùng trên máy ảo, mất metadata và container sẽ chạy độc lập không bị kiểm soát bởi Docker nữa.
Bước 1: Dừng các dịch vụ Docker Snap
sudo snap stop docker
Nếu lệnh trên bị treo, bạn có thể chạy trong tab khác:
sudo systemctl stop snap.docker.dockerd.service
Hoặc mạnh tay:
sudo pkill -f dockerd
sudo pkill -f containerd
Bước 2: Xóa snapshot (tuỳ chọn, nếu bị treo snapshot)
bash
Sao chép
Chỉnh sửa
sudo snap saved
Bạn sẽ thấy một dòng kiểu:
Set #1 docker ... auto
Xoá snapshot đó:
sudo snap forget 1
(số 1 là số ID của snapshot)
Bước 3: Thử xóa lại Snap Docker:
sudo snap remove docker
Bước 4: (nếu vẫn kẹt): Dùng chế độ "force remove":
sudo snap remove --purge docker
Hoặc kết hợp dọn dữ liệu:
sudo snap remove --purge docker
sudo rm -rf /var/snap/docker
Bước 5: Cài lại Docker bản chính thức:
Sau khi snap docker đã bị xoá thành công:
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
→ Xác nhận bằng:
docker info | grep Root
Bạn sẽ thấy:
Docker Root Dir: /var/lib/docker