Jawaban:
Saya percaya bahwa dalam panduan ini Anda akan memiliki penjelasan yang bagus.
Anda dapat mengubah direktori basis penyimpanan Docker (tempat penampung dan gambar) menggunakan opsi -g saat memulai daemon Docker.
Ubuntu / Debian: edit
/etc/default/dockerfile Anda dengan-gopsi:DOCKER_OPTS="-dns 8.8.8.8 -dns 8.8.4.4 -g /mnt"Fedora / Centos: edit
/etc/sysconfig/docker, dan tambahkan-gopsi dalam variabel other_args: ex.other_args="-g /var/lib/testdir". Jika ada lebih dari satu opsi, pastikan Anda menyertakannya di "". Setelah restart, (service docker restart) Docker harus menggunakan direktori baru.Menggunakan symlink adalah metode lain untuk mengubah penyimpanan gambar.
Perhatian - Langkah-langkah ini tergantung pada / var / lib / docker Anda saat ini menjadi direktori aktual (bukan symlink ke lokasi lain).
1) Berhenti buruh pelabuhan:
service docker stop. Verifikasi tidak ada proses buruh pelabuhan menjalankan ps faux2) Periksa buruh pelabuhan benar-benar tidak berjalan. Lihatlah direktori buruh pelabuhan saat ini: ls
/var/lib/docker/2b) Buat cadangan -
tar -zcC /var/lib docker > /mnt/pd0/var_lib_docker-backup-$(date +%s).tar.gz3) Pindahkan
/var/lib/dockerdirektori ke partisi baru Anda:mv /var/lib/docker /mnt/pd0/docker4) Buat symlink:
ln -s /mnt/pd0/docker /var/lib/docker5) Coba intip struktur direktori untuk memastikannya terlihat seperti sebelum mv:
ls /var/lib/docker/(perhatikan trailing slash untuk6) Mulai kembali buruh pelabuhan
service docker start7) restart wadah Anda, selesaikan symlink)
Untuk mengubah datadirektori di dockerdalamnya perlu dijalankan dengan opsi -g /my/data. Di /etc/default/dockerset I saya :
DOCKER_OPTS="-g /srv/docker"
Lihat juga catatan saya di sini .
Untuk mengubah datadirektori lxcsaya masukkan /etc/lxc/lxc.conf:
lxc.lxcpath = /srv/lxc
Untuk memperluas jawaban @ MattK:
The dokumentasi Docker pada pengendalian daemon Docker menunjukkan bahwa cara platform independen untuk melakukan ini adalah:
edit file /etc/docker/daemon.json agar mengandung baris
{
"data-root": "/mnt/docker-data",
(...)
}
di mana /mnt/docker-datadirektori tempat Anda ingin menyimpan gambar dan wadah buruh pelabuhan.
Kemudian
sudo systemctl restart docker
Anda dapat memeriksa apakah itu berfungsi dengan menjalankan
docker info
dan cari konten baris yang dimulai dengan Docker Root Dir:.
Lihat juga https://stackoverflow.com/a/50217666/2209313 dan https://unix.stackexchange.com/q/452368/36043 .