Mengapa ifconfig tidak tersedia dalam wadah Ubuntu Docker?
64
Dengan basis ubuntu:12.04, ifconfigtidak tersedia dalam wadah, meskipun ipperintahnya tersedia, mengapa ini? dan, bagaimana cara masuk ke ifconfigdalam wadah?
Masih membuat saya bertanya-tanya mengapa itu tidak termasuk secara default, tapi saya kira inti dari wadah ini adalah seminimal mungkin dan masih berfungsi.
Iguananaut
5
Tambahan lain - pada contoh baru dari wadah Ubuntu daftar paket juga tidak terisi, jadi Anda harus menjalankannya sudo apt-get updatejika belum.
Iguananaut
1
ifconfigtidak termasuk dalam ubuntu:16:04.
JamesThomasMoon1979
11
Untuk menjawab @Iguananaut: VM Ubuntu adalah 500+ MB, sedangkan gambar Ubuntu Docker kurang dari 100MB. Orang-orang yang membuat wadah gambar perlu menggambar garis untuk paket / binari apa yang harus dimasukkan dan apa yang tidak, sehingga hanya menyimpan kebutuhan dasar di dalam. Anda tahu, semua ini lebih masuk akal jika Anda menganggap wadah sebagai proses, dan bukan sebagai 'lingkungan komputasi yang terisolasi untuk dimainkan di dalam dan di sekitar'
Rushi Agrawal
13
Kecuali dan sampai Anda dapat menginstal net-tools, tidak perlu untuk memberikannya secara default. Juga jika Anda ingin melihat alamat IP maka ada perintah lain yang tersedia oleh buruh pelabuhan itu sendiri: -
Saya juga menemukan gangguan ini, tetapi seperti yang ditulis Devendra di docker, Anda bisa mendapatkan semua detail tentang wadah tanpa itu net-tools. Dalam kasus saya, saya membutuhkan IP kontainer. Untuk mengekstrak IP Anda dapat menggunakan:
ifconfig
itu sudah usang, tetapi beberapa program masih bergantung padanya.ip
dalam versi perangkat lunak saat ini. Saya perlu solusi cepat untuk masalah ini.Jawaban:
Anda dapat menginstal ifconfig dengan
apt-get install net-tools
. (Khususnya, dengan menambahkanRUN apt-get install -y net-tools
ke Dockerfile Anda.)Berdasarkan pengujian saya, ifconfig termasuk dalam ubuntu: 14.04.
sumber
sudo apt-get update
jika belum.ifconfig
tidak termasuk dalamubuntu:16:04
.Kecuali dan sampai Anda dapat menginstal net-tools, tidak perlu untuk memberikannya secara default. Juga jika Anda ingin melihat alamat IP maka ada perintah lain yang tersedia oleh buruh pelabuhan itu sendiri: -
buruh pelabuhan memeriksa sintaks:
docker inspect [OPTIONS] NAME|ID [NAME|ID...]
Cmd ini akan menunjukkan kepada Anda setiap detail wadah yang berjalan termasuk alamat IP.
sumber
Saya juga menemukan gangguan ini, tetapi seperti yang ditulis Devendra di docker, Anda bisa mendapatkan semua detail tentang wadah tanpa itu
net-tools
. Dalam kasus saya, saya membutuhkan IP kontainer. Untuk mengekstrak IP Anda dapat menggunakan:Sunting notasi yang bahkan lebih pendek untuk mendapatkan IP kontainer (lihat contoh inspeksi buruh pelabuhan ):
sumber