

ubuntu latest イメージから生成したコンテナから必要なライブラリ等をインストールするため
リポジトリのアップデートを試みたところ下記のエラーが出ます。

[code]

    root@59eec8e98b0b:/# apt-get update
    Err:1 http://security.ubuntu.com/ubuntu bionic-security InRelease        
      Temporary failure resolving 'security.ubuntu.com'
    Err:2 http://archive.ubuntu.com/ubuntu bionic InRelease                  
      Temporary failure resolving 'archive.ubuntu.com'
    Err:3 http://archive.ubuntu.com/ubuntu bionic-updates InRelease
      Temporary failure resolving 'archive.ubuntu.com'
    Err:4 http://archive.ubuntu.com/ubuntu bionic-backports InRelease
      Temporary failure resolving 'archive.ubuntu.com'
    Reading package lists... Done        
    W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/bionic/InRelease  Temporary failure resolving 'archive.ubuntu.com'
    W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/bionic-updates/InRelease  Temporary failure resolving 'archive.ubuntu.com'
    W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/bionic-backports/InRelease  Temporary failure resolving 'archive.ubuntu.com'
    W: Failed to fetch http://security.ubuntu.com/ubuntu/dists/bionic-security/InRelease  Temporary failure resolving 'security.ubuntu.com'
    W: Some index files failed to download. They have been ignored, or old ones used instead.
    
[/code]

システム仕様は下記の通りです。

OS: Ubuntu 18.04.1 LTS  
Docker: 18.06.1-ce  
インターネット ←→ 社内LAN ←→ ルーター（プライベートアドレス） ←→ PC

dockerホスト（Ubuntu OS)上では、問題なく外部と繫がります。

dockerホスト上でのネットワークアダプタの設定は下記の通りで、Dockerコンテナから外部へのアクセスに関するネット情報とあわせて、特段問題がないように見えます。

[code]

    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
        link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
        inet 127.0.0.1/8 scope host lo
           valid_lft forever preferred_lft forever
        inet6 ::1/128 scope host 
           valid_lft forever preferred_lft forever
    2: enp9s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
        link/ether e0:db:55:a9:3f:24 brd ff:ff:ff:ff:ff:ff
        inet 192.168.11.2/24 brd 192.168.11.255 scope global dynamic noprefixroute enp9s0
           valid_lft 169423sec preferred_lft 169423sec
        inet6 fe80::e52:b647:3b9e:d5c6/64 scope link noprefixroute 
           valid_lft forever preferred_lft forever
    3: docker0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default 
        link/ether 02:42:6d:9f:87:ae brd ff:ff:ff:ff:ff:ff
        inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
           valid_lft forever preferred_lft forever
        inet6 fe80::42:6dff:fe9f:87ae/64 scope link 
           valid_lft forever preferred_lft forever
    31: veth70e27c5@if30: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master docker0 state UP group default 
        link/ether 2a:6b:4e:c4:8f:44 brd ff:ff:ff:ff:ff:ff link-netnsid 0
        inet6 fe80::286b:4eff:fec4:8f44/64 scope link 
           valid_lft forever preferred_lft forever
    
[/code]

ブリッジの設定は下記の通りです。

[code]

    docker0     8000.02426d9f87ae   no      veth70e27c5
    
[/code]

コンテナ内からpingを実行しようとしたところ、 command not found コンテナ側からホストへのアクセス確認もできません。

ちなみに、CentOSでは、pingはルータ下のアドレスには届くのですが、ルータ外のアドレスにはアクセス不可能なようです。

以上、原因の分かる方がおられましたら、よろしくお願いいたします。


CC BY-SA 4.0
2018-11-05T06:44:38.033
49974
2018-11-22T04:44:56.553
2018-11-05T06:52:30.503
3060
26138
question
docker network
Dockerコンテナ内からapt-getコマンドエラー解決方法に関して


今回のエラーの原因は、ローカルエリアネットワークに接続したPC上のDockerコンテナから外部のインターネット上のコンテンツや資源にアクセスする場合に、適切なDNSサーバーにアクセスできないことであった。  
DNSサーバーにアクセスする一つの方法として、dockerコンテナ起動時のrunコマンドのオプション （書式
--dns=DNSサーバーのIPアドレス）でアドレスを指定することであると、あるサイト情報に記載されていた。これに従い、今回の場合はPCの接続先であるルータ上にローカルなDNSサーバーが設定されていたので、そのルータのIPアドレスを指定することで解決した。


CC BY-SA 4.0
2018-11-22T02:54:17.257
50525
2018-11-22T04:44:56.553
2018-11-22T04:44:56.553
26138
26138
49974
answer