Moby: resolv.conf tidak ada file o direktori tersebut

Dibuat pada 26 Mar 2014  ·  17Komentar  ·  Sumber: moby/moby

saya baru saja menginstal docker di ubuntu 12.04 dari panduan ini:
http://docs.docker.io/en/latest/installation/ubuntulinux/
dan saya mendapatkan ini

➜ ~ sudo docker run -i -t ubuntu / bin / bash
2014/03/26 11:45:17 Kesalahan: buka /etc/resolv.conf: tidak ada file atau direktori seperti itu

ada saran?

arenetworking kinbug

Komentar yang paling membantu

Saya mengalami masalah ini dan tampaknya ini adalah efek samping dari konfigurasi NetworkManager pada distribusi saya, Sabayon Linux.

Dalam kasus saya, /etc/resolv.conf adalah symlink ke /etc/resolvconf/run/resolve.conf dan hanya dibuat setelah NetworkManager terhubung ke jaringan. Ini membuat Docker gagal memulai saat boot tetapi mulai dengan baik setelah saya masuk dan terhubung ke jaringan.

Semua 17 komentar

Masalah dengan mesin host Anda. Buat /etc/resolv.conf dan isi dengan informasi DNS yang sesuai dan coba perintah lagi.

Ini bukan bug Docker, ini masalah yang disebabkan oleh tidak adanya /etc/resolv.conf di host Anda. Saya dapat mereproduksi masalah ketika tidak ada resolv.conf di host.

Harap perbaiki sistem Linux Anda.

IMHO file tersebut tidak perlu, bukan? Jadi, ini seharusnya bukan tentang OS yang rusak.
http://man7.org/linux/man-pages/man5/resolv.conf.5.html

Jika file ini tidak ada, hanya server nama di mesin lokal yang akan ditanyai;

Dalam hal ini server DNS harus berjalan di komputer lokal Anda.

Saya mengalami masalah ini dan tampaknya ini adalah efek samping dari konfigurasi NetworkManager pada distribusi saya, Sabayon Linux.

Dalam kasus saya, /etc/resolv.conf adalah symlink ke /etc/resolvconf/run/resolve.conf dan hanya dibuat setelah NetworkManager terhubung ke jaringan. Ini membuat Docker gagal memulai saat boot tetapi mulai dengan baik setelah saya masuk dan terhubung ke jaringan.

@OOPMan Dalam skrip init Anda, bukankah seharusnya Anda bergantung pada NetworkManager yang sudah aktif sebelum layanan buruh pelabuhan dimulai?

Saya juga bertanya-tanya apakah ini harus menjadi masalah Go upstream (khususnya "netgo") - apakah kami benar-benar memeriksa resolv.conf secara langsung, atau hanya secara tidak langsung melalui implementasi netgo?

Saya menyadari bahwa masalah saya tidak ada hubungannya dengan NM atau Sabayon Linux :-)

Saya menggunakan Asus X550CC. Secara keseluruhan, mesin yang layak tetapi memiliki satu peringatan: Perangkat keras Wi-Fi dinonaktifkan di Linux sampai Anda tidur dan kemudian melanjutkan. Ini berarti bahwa saat boot, tidak terhubung ke LAN kabel, sistem pada dasarnya memutuskan tidak ada jaringan yang berfungsi dan karenanya /etc/resolv.conf tidak berisi apa pun. Docker tidak menyukai ini dan karenanya gagal untuk memulai.

Setelah saya menangguhkan-dilanjutkan maka semuanya baik-baik saja dan Docker dimulai.

@unclejack @crosbymichael Saya masih melihat masalah ini hari ini di docker versi 1.12.6.
Mengapa gerbang /etc/resolv.conf menjalankan container docker?

Saya pikir belum ada jawaban yang bagus untuk ini dan karena saya juga mengalami ini, saya membuka kembali. @ thaJeztah dapatkah Anda melakukan ping ke pengelola jaringan? Pada titik ini saya tidak mengerti mengapa container start di-gated oleh jaringan (kami memiliki mesin yang terisolasi di mana tidak ada file resolv.conf tetapi kami tetap ingin memulai container)

Manual resolv.conf (dari glibc) menyatakan:

   If this file does not exist, only the name server on the local
   machine will be queried; the domain name is determined from the
   hostname and the domain search path is constructed from the domain
   name.

Oleh karena itu, harus diasumsikan bahwa sistem Linux tanpa resolv.conf adalah sistem Linux yang valid.

Perangkat lunak lain seperti logika pemuatan resolv.conf DNS golang, menangani resolv.conf yang hilang atau tidak dapat diakses dengan cara yang sama: https://golang.org/src/net/dnsconfig_unix.go

Selain itu, resolv.conf tidak diperlukan pada sistem yang menggunakan modul NSS non-libc seperti nss-resol atau winbind, ldap, dll.

/ cc @sanimej

Bug ini juga mencegah penggunaan buruh pelabuhan offline pada beberapa distribusi.

cukup buat nama file kosong 'resolv.conf' di tempat itu, masalah saya terpecahkan ~

Saya melihat perbaikan untuk ini digabung melalui https://github.com/moby/moby/commit/1ddeb11835600127a3319fc0dd3764e57ffbf521 , yang akan disertakan dalam rilis 17.10 mendatang; https://github.com/docker/docker-ce/blob/17.10/components/engine/vendor/github.com/docker/libnetwork/sandbox_dns_unix.go

penutupan, karena ini diselesaikan pada master 👍

Apakah halaman ini membantu?
0 / 5 - 0 peringkat