ย้ายที่เก็บ local docker data
Docker data ประกอบไปด้วย images, storage, containers บางที build image ไปเรื่อย ๆ quota directory ก็เต็มได้ แล้วเราก็อาจจะไม่ได้อยากทำ private image repository แต่แค่อยากย้ายที่เก็บ docker image
ตอนแรกทำตามไกด์นี้ https://www.ibm.com/docs/en/cloud-private/3.1.1?topic=pyci-specifying-default-docker-storage-directory-by-using-bind-mount แต่เจอปัญหาต่อไปนี้
- ต้องลบ image, storage ทิ้งแล้วสร้างใหม่
- ต้อง bind directory ใหม่ กับ directory เดิม ถ้าเผลอไปลบอะไรที่เดิม ที่ใหม่ก็หายด้วยนะ (เผลอทำมาแล้ว เพลีย…)
- ในบทความไม่ได้สอน auto bind ถ้าไม่ได้ทำ หลัง restart มาต้อง bind ใหม่ทุกครั้ง
หลังจากเผลอลบข้อมูลทิ้ง เลยไปเจอ guide ใหม่ที่ https://www.guguweb.com/2019/02/07/how-to-move-docker-data-directory-to-another-location-on-ubuntu/ โดยมีขั้นตอนต่อไปนี้
- หยุด Docker daemon
sudo service docker stop
2. เพิ่ม configuration ที่ไฟล์ /etc/docker/daemon.json เพื่อแก้พาธของ Docker data-root
{
“data-root”: “/พาธ/ของ/docker/ใหม่”
}
3. ก๊อปปี้ข้อมูลไปที่ใหม่
sudo rsync -aP /var/lib/docker/ /พาธ/ของ/docker/ใหม่
4. เปลี่ยนชื่อไดเร็กทอรี่เก่า
sudo mv /var/lib/docker /var/lib/docker.old
5. เริ่ม Docker daemon ใหม่
sudo service docker start
6. ถ้าไม่มีปัญหาอะไรก็ลบไดเร็กทอรี่เก่าได้เลย
sudo rm -rf /var/lib/docker.old