Contents

Configure DNS

When installing Cnavas-lms on docker, I got error below:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
$ source ~/env1/bin/activate
$ ./script/docker_dev_setup.sh 

  ________  ________  ________   ___      ___ ________  ________
|\   ____\|\   __  \|\   ___  \|\  \    /  /|\   __  \|\   ____\
\ \  \___|\ \  \|\  \ \  \\ \  \ \  \  /  / | \  \|\  \ \  \___|_
 \ \  \    \ \   __  \ \  \\ \  \ \  \/  / / \ \   __  \ \_____  \
  \ \  \____\ \  \ \  \ \  \\ \  \ \    / /   \ \  \ \  \|____|\  \
   \ \_______\ \__\ \__\ \__\\ \__\ \__/ /     \ \__\ \__\____\_\  \
    \|_______|\|__|\|__|\|__| \|__|\|__|/       \|__|\|__|\_________\
                                                         \|_________|

Welcome! This script will guide you through the process of setting up a
Canvas development environment with docker and dinghy/dory.

When you git pull new changes, you can run ./scripts/docker_dev_update.sh
to bring everything up to date.
  Log file is /home/xxxx/repo/canvas/log/docker_dev_setup.log

> It looks like you're using Linux. Let's set that up.

> Checking Dependencies...
	Canvas recommends using dory for a reverse proxy allowing you to
	access canvas at http://canvas.docker. Detailed instructions
	are available at https://github.com/FreedomBen/dory.
	If you want to install it, run 'gem install dory' then rerun this script.
Would you like to skip dory? [y/n] n
Install dory then rerun this script.

  /o\ Something went wrong. Check /home/xxxx/repo/canvas/log/docker_dev_setup.log

docker_dev_setup.log says:

1
2
...
Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io: no such host

Problem

1. Dory installation failed by “no such name” error.

1
2
3
$ gem install dory
ERROR:  Could not find a valid gem 'dory' (>= 0), here is why:
          Unable to download data from https://rubygems.org/ - no such name (https://rubygems.org/specs.4.8.gz)

2. docker_dev_setup.sh failed by lookup error.

1
Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io: no such host

Both problems come from DNS lookup error.

When I run dig registry-1.docker.io, dig gemsruby.org, it’s apparently no way to reach out the external domain.

1
2
3
4
5
$ dig rubygems.org

; <<>> DiG 9.11.3-1ubuntu1.15-Ubuntu <<>> rubygems.org
;; global options: +cmd
;; connection timed out; no servers could be reached

Setup DNS server for Wifi network

As I configured Ubuntu server connecting to internet over wifi, I needed to configure it by Wifi settings.

Netplan setting

Ref.

I tried some for netplan setting when I did SSH configuration and looked around it. However it did not work (could not reflect DNS server settings in /etc/netplan/01-network-manager-all.yaml to work validly).

/etc/netplan/01-network-manager-all.yaml

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
network:
  version: 2
  renderer: NetworkManager
  ethernets:
    enp3s0:
      addresses: [xxx.xxx.xxx.xxx/24, 'xxxx:xxxx:xxxx:xxxx:xxxx:xxxx/64']
      gateway4: xxx.xxx.xxx.xxx
      nameservers:
        addresses: [xxxx.xxx.xxx.xxx]
        addresses: [8.8.8.8, 8.8.4.4]
1
$ sudo netplan apply

However, it did not reflect to look up server names.

1
2
3
4
5
$ sudo systemd-resolve --flush-caches

$ systemd-resolve --status | grep 'DNS Servers' -A2
         DNS Servers: 192.168.0.1
          DNS Domain: ~.
Note
  • It may work if I set wifi settings on netplan, but I did not try it at this point.
  • Or simply change /etc/systemd/resolved.conf then systemctl restart systemd-resolved.

Wifi settings on GUI

  1. Ubuntu GUI screen > Settings > Wifi > Kog mark on active network > IP4
  2. Update “DNS” column. I setup Google DNS with comma separator (8.8.8.8, 8.8.4.4)
  3. Reboot ubuntu by sudo reboot
  4. Confirmation
    1
    2
    3
    4
    
    $ systemd-resolve --status | grep 'DNS Servers' -A2
         DNS Servers: 192.168.0.1
                      8.8.8.8
                      8.8.4.4
    

Confirmation

Then I could lookup repository, though I had the other error on ./script/docker_dev_setup.sh.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
$ dig registry-1.docker.io

; <<>> DiG 9.11.3-1ubuntu1.15-Ubuntu <<>> registry-1.docker.io
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 63520
;; flags: qr rd ra; QUERY: 1, ANSWER: 8, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;registry-1.docker.io.		IN	A

;; ANSWER SECTION:
registry-1.docker.io.	49	IN	A	54.161.109.204
registry-1.docker.io.	49	IN	A	23.23.116.141
registry-1.docker.io.	49	IN	A	35.169.249.115
registry-1.docker.io.	49	IN	A	52.72.232.213
registry-1.docker.io.	49	IN	A	34.231.251.252
registry-1.docker.io.	49	IN	A	3.220.36.210
registry-1.docker.io.	49	IN	A	34.238.187.50
registry-1.docker.io.	49	IN	A	54.156.198.233

;; Query time: 5 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Tue May 11 16:48:34 JST 2021
;; MSG SIZE  rcvd: 177
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
$ dig gemsruby.org

; <<>> DiG 9.11.3-1ubuntu1.15-Ubuntu <<>> gemsruby.org
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 31113
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;gemsruby.org.			IN	A

;; AUTHORITY SECTION:
org.			899	IN	SOA	a0.org.afilias-nst.info. noc.afilias-nst.info. 2014349606 1800 900 604800 86400

;; Query time: 10 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Tue May 11 16:48:46 JST 2021
;; MSG SIZE  rcvd: 104

References