Gambar Docker disimpan sebagai lapisan sistem file. Setiap perintah di Dockerfile membuat layer. Anda juga dapat membuat lapisan dengan menggunakan docker commit
dari baris perintah setelah membuat beberapa perubahan ( docker run
mungkin melalui ).
Lapisan-lapisan ini disimpan secara default di bawah /var/lib/docker
. Meskipun Anda (secara teoritis) dapat mengambil file dari sana dan menginstalnya di server docker yang berbeda, mungkin ide yang buruk untuk bermain dengan representasi internal yang digunakan oleh Docker.
Ketika Anda mendorong gambar Anda, lapisan-lapisan ini dikirim ke registri (register hub docker, secara default ... kecuali Anda menandai gambar Anda dengan awalan registri lain) dan disimpan di sana. Saat mendorong, id lapisan digunakan untuk memeriksa apakah Anda sudah memiliki lapisan secara lokal atau perlu diunduh. Anda dapat menggunakan docker history
untuk mengintip di mana lapisan (gambar lain) digunakan (dan, sampai taraf tertentu, perintah yang menciptakan lapisan)
Adapun opsi untuk berbagi gambar tanpa mendorong ke register hub docker, opsi terbaik Anda adalah:
docker save
gambar atau docker export
wadah. Ini akan menampilkan file tar ke output standar, jadi Anda ingin melakukan sesuatu seperti docker save 'dockerizeit/agent' > dk.agent.latest.tar
. Kemudian Anda dapat menggunakan docker load
atau docker import
di host yang berbeda.
Host registri pribadi Anda sendiri. - Sudah ketinggalan zaman, lihat komentar Lihat gambar registri buruh pelabuhan . Kami telah membangun registry yang didukung s3 yang dapat Anda mulai dan hentikan sesuai kebutuhan (semua status disimpan di ember s3 pilihan Anda) yang mudah untuk dipasang. Ini juga merupakan cara menarik untuk menonton apa yang terjadi ketika mendorong ke registri
Gunakan registri lain seperti quay.io (saya belum mencobanya secara pribadi), meskipun masalah apa pun yang Anda miliki dengan hub buruh pelabuhan mungkin akan berlaku di sini juga.