Rumah >Operasi dan penyelenggaraan >Docker >Bagaimana untuk memasuki docker sebelumnya

Bagaimana untuk memasuki docker sebelumnya

PHPz
PHPzasal
2023-04-10 14:17:261006semak imbas

Dengan populariti dan penggunaan meluas Docker, ramai pembangun akan menggunakan teknologi kontena ini dalam penggunaan dan penyelenggaraan aplikasi. Tetapi sesetengah orang mungkin menghadapi masalah masuk ke dalam bekas Docker sebelumnya. Jadi bagaimana untuk memasuki Docker sebelumnya?

Dalam artikel ini, kami akan memperkenalkan anda cara memasuki bekas Docker sebelumnya. Kami akan memperkenalkan dua kaedah masing-masing: menggunakan arahan attach Docker dan menggunakan alat nsenter.

Bahagian 1: Menggunakan arahan attach Docker

Arahan attach Docker ialah cara untuk memasuki bekas menggunakan alat baris arahan Docker. Ia membolehkan anda menjalankan arahan dalam mod interaktif di dalam bekas, sama seperti dalam konsol. Berikut ialah langkah-langkah untuk menggunakan arahan attach Docker untuk memasuki bekas:

Langkah 1: Ketahui ID atau nama kontena

Sebelum menggunakan arahan attach Docker, kita perlu mengetahui ID atau nama bekas Docker yang hendak dimasukkan . Anda boleh menggunakan arahan berikut untuk mendapatkan ID atau nama bekas:

docker ps -a

Arahan ini akan memaparkan senarai semua bekas Docker, termasuk nama, ID, status dan maklumat lain mereka. Cari bekas yang ingin anda masukkan dan salin ID atau namanya.

Langkah 2: Jalankan arahan attach Docker

Gunakan arahan berikut untuk memasuki bekas Docker yang sedang berjalan:

docker attach container-id

Di sini, container-id berada dalam langkah sebelumnya ID atau nama kontena yang diperolehi. Selepas menjalankan arahan ini, anda akan berada di dalam bekas dan boleh menjalankan arahan interaktif di dalamnya.

Sila ambil perhatian bahawa arahan attach Docker mungkin tidak berfungsi dengan semua jenis bekas. Jika bekas berjalan di latar belakang, anda tidak akan dapat memasukkannya menggunakan arahan ini.

Bahagian 2: Menggunakan alat nsenter

Jika anda ingin menjalankan arahan dalam bekas Docker yang anda keluar sebelum ini, anda boleh menggunakan alat nsenter. nsenter ialah alat untuk sistem Linux yang membolehkan anda memasuki ruang nama terpencil. Berikut adalah langkah-langkah menggunakan alat nsenter untuk memasuki bekas:

Langkah 1: Pasang alat nsenter

Sebelum menggunakan alat nsenter, kita perlu memasangnya terlebih dahulu. Anda boleh menggunakan arahan curl berikut untuk memasang alat nsenter:

curl -o /tmp/nsenter https://raw.githubusercontent.com/jpetazzo/nsenter/master/nsenter && chmod +x /tmp/nsenter

Arahan ini akan memuat turun skrip nsenter daripada GitHub, menyimpannya ke fail /tmp/nsenter dan menambahnya pada pembolehubah persekitaran sistem tengah.

Langkah 2: Jalankan arahan nsenter

Gunakan arahan berikut untuk memasuki bekas Docker yang anda keluar sebelum ini:

docker inspect --format '{{.State.Pid}}' container-id > /tmp/container-pid
sudo /tmp/nsenter --target $(cat /tmp/container-pid) --mount --uts --ipc --net --pid

Di sini, container-id ialah bekas yang anda keluarkan nak masukkan ID atau nama. Selepas menjalankan arahan ini, anda akan berada di dalam bekas dan boleh menjalankan arahan di dalamnya.

Sila ambil perhatian bahawa alat nsenter perlu dijalankan dengan keistimewaan akar superuser.

Ringkasan

Dalam artikel ini, kami memperkenalkan dua kaedah berbeza untuk masuk ke dalam bekas Docker sebelumnya. Anda boleh memilih untuk menggunakan arahan attach Docker untuk terus memasuki bekas yang sedang berjalan, atau gunakan alat nsenter untuk memasukkan bekas yang dihentikan. Tidak kira kaedah yang anda pilih, menggunakan bekas Docker akan menjadi lebih mudah, dan penggunaan dan penyelenggaraan aplikasi akan menjadi lebih mudah.

Atas ialah kandungan terperinci Bagaimana untuk memasuki docker sebelumnya. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn