Docker menjalankan file iso sendiri sebagai os


3

Hai semua saya mencoba menjalankan file ISO sebagai os di dalam docker untuk itu saya telah membuat iso saya sebagai tar.gz tapi saya tidak dapat menemukan jawaban yang cocok untuk mengimpor file itu di dalam wadah buruh pelabuhan.

Kalau ada yang bisa membantu saya dalam hal ini akan lebih bagus.


Kedengarannya Anda sedang mencoba melakukan sesuatu yang tidak dirancang Docker untuk dilakukan. Seperti, misalnya, ganti mesin virtual yang sebenarnya dengan wadah Docker. Masalah apa yang Anda coba selesaikan?
gronostaj

Jawaban:


1

Jika Anda mendapatkan file ISO konten mana yang ingin Anda gunakan sebagai sistem file root di dalam wadah buruh pelabuhan, maka buruh pelabuhan tidak mendukung secara langsung. Anda harus mengonversi gambar ISO menjadi gambar buruh pelabuhan terlebih dahulu.

Solusi yang mungkin adalah memasang image ISO menggunakan perangkat loop pada host dan kemudian memanggil docker run dengan wadah minimal menggunakan -v untuk mengikat direktori tingkat atas dari iso ke conatiner.

Yaitu. sesuatu seperti:

mkdir /tmp/iso-mount
mount -o loop,ro path-to-image-file.iso /tmp/iso-mount
top_dir_mounts=()
for i in bin etc lib usr var
do
    top_dir_mounts+=(-v "/tmp/iso-mount/$i:/$i")
done
docker run --rm --read-only "${top_dir_mounts[@]}" --tmpfs /tmp --tmpfs /run busybox

Yang menimpa dalam wadah konten gambar busybox dengan file dari file ISO Anda. Itu bisa jauh lebih sederhana jika docker run diizinkan untuk menggunakan -v untuk menimpa root di wadah sehingga semua -v di atas dapat diganti dengan adil -v "/tmp/iso-mount:/", tapi buruh pelabuhan menolak itu.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.