1 安装DNS(可选)

docker run
-d \
–name=bind9
–restart=always
–publish 53:53/udp
–publish 53:53/tcp
–publish 127.0.0.1:953:953/tcp
–volume /etc/bind
–volume /var/cache/bind
–volume /var/lib/bind
–volume /var/log
test.com/public/bind9:9.18

2 配置DNS

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
cat > db.test.com<<EOF
;
; BIND data file for local loopback interface
;
\$TTL 604800
@ IN SOA ns.test.com. root.test.com. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
IN NS ns.test.com.
ns IN A 1.1.1.17
hub IN A 1.1.1.17
@ IN A 1.1.1.17
k8s-master1 IN A 1.1.1.11
k8s-master2 IN A 1.1.1.12
k8s-master3 IN A 1.1.1.13
k8s-node1 IN A 1.1.1.14
k8s-node2 IN A 1.1.1.15
cloud IN A 1.1.1.11
jenkins IN A 1.1.1.17
gitlab IN A 1.1.1.17
nexus IN A 1.1.1.20
;
17 IN PTR ns.test.com.
EOF
1
2
3
4
5
6
cat <<EOF >> named.conf.default-zones
zone "test.com" {
type master;
file "/etc/bind/db.test.com";
};
EOF

docker exec -it bind9 rndc reload

配置文件检查步骤:略
测试步骤:略