Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Penyelesaian kepada sudo tidak ditemui dalam Docker

Penyelesaian kepada sudo tidak ditemui dalam Docker

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

Docker ialah teknologi kontena yang membantu pembangun menggunakan, menjalankan dan menguji aplikasi dengan cepat. Walau bagaimanapun, apabila menggunakan Docker, anda mungkin menghadapi situasi di mana arahan sudo tidak dapat ditemui, yang akan membawa banyak masalah kepada pengguna. Jadi, bagaimana untuk menyelesaikan masalah ini? Artikel ini akan menyediakan beberapa penyelesaian untuk membantu pengguna menyelesaikan masalah ini dengan mudah.

  1. Pasang sudo

Dalam sesetengah kes, arahan sudo tidak disertakan dalam imej Docker, yang menyebabkan arahan ini tidak ditemui dalam bekas. Untuk menyelesaikan masalah ini, pengguna boleh cuba memasang arahan sudo. Anda boleh memasang sudo dalam bekas Docker dengan arahan berikut:

apt-get update && apt-get -y install sudo

Arahan ini akan mengemas kini senarai pakej yang diuruskan oleh apt-get dan kemudian memasang arahan sudo. Selepas pemasangan selesai, pengguna boleh menggunakan arahan sudo untuk melaksanakan arahan lain.

  1. Tukar kebenaran pengguna

Dalam sesetengah kes, pengguna mungkin tidak mempunyai kebenaran yang mencukupi untuk melaksanakan perintah sudo. Pada masa ini, pengguna perlu menukar kebenaran pengguna untuk mendapatkan kebenaran yang mencukupi untuk menjalankan arahan sudo. Kebenaran pengguna boleh ditukar dengan mengikuti langkah berikut:

  1. Dalam bekas Docker, log masuk sebagai root menggunakan arahan berikut:

    su -
  2. Laksanakan Perintah berikut digunakan untuk menukar kebenaran pengguna:

    usermod -aG sudo <username>

    Di mana, merujuk kepada nama pengguna yang kebenarannya akan ditukar. Perintah ini menambahkan pengguna ke kumpulan sudo, memberikan pengguna kebenaran yang diperlukan untuk melaksanakan perintah sudo.

  3. Keluar sebagai pengguna root, log masuk semula

    exit

    Kemudian gunakan arahan berikut untuk log masuk sebagai pengguna:

    su <username>

    Kemudian anda akan dapat menggunakan sudo Ordered.

  4. Tentukan bendera keistimewaan semasa permulaan

Dalam sesetengah kes, bekas Docker mungkin perlu mendapatkan kebenaran peringkat istimewa untuk mengakses sumber sistem hos. Tahap kebenaran istimewa ini boleh diperoleh dengan menentukan bendera istimewa apabila Docker memulakan bekas. Anda boleh menggunakan arahan berikut untuk menentukan bendera istimewa:

docker run --privileged -it <image_name> /bin/bash

di mana, merujuk kepada nama imej Docker untuk dimulakan. Perintah ini akan membuka shell bash dalam bekas dengan bendera istimewa ditetapkan kepada benar.

Ringkasan

Apabila menggunakan Docker, adalah masalah yang sangat biasa bahawa arahan sudo tidak dapat ditemui. Pengguna boleh menyelesaikan masalah ini dengan memasang arahan sudo, menukar kebenaran pengguna atau menentukan bendera istimewa semasa permulaan. Dalam pembangunan Docker sebenar, adalah perlu untuk memilih penyelesaian yang paling sesuai mengikut situasi khusus untuk memastikan operasi normal bekas Docker.

Atas ialah kandungan terperinci Penyelesaian kepada sudo tidak ditemui dalam Docker. 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