Docker使用系列六:CentOS 6.5 制作Docker DNS服务镜像

前面我们在192.168.56.101上有了registry.feedao.com私有的镜像源服务器,并且有了registry.feedao.com/centos-newssh镜像。

今天我们在192.168.56.103上制作DNS服务镜像,当然最好有点bind9的经验。

第一步,配置Hosts,获取docker镜像:

echo "192.168.56.101 registry.feedao.com" >> /etc/hosts

第二步,这里需要注意udp协议,256M是内存大小:

docker run -d -p 127.0.0.1:33306:22 -p 53:53 -p 53:53/udp 256M registry.feedao.com/centos-newssh

第三步:登陆容器

ssh 127.0.0.1 -p 33306

第四步:安装bind9

yum install bind bind-utils -y

第五步:修改配置文件/etc/named.conf,options参看下面:

options {
	forwarders { 8.8.8.8; 8.8.4.4; };
	listen-on port 53 { any; };
	listen-on-v6 port 53 { ::1; };
	directory 	"/var/named";
	dump-file 	"/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
	allow-query     { any; };
	recursion yes;

	dnssec-enable yes;
	dnssec-validation yes;
	dnssec-lookaside auto;

	/* Path to ISC DLV key */
	bindkeys-file "/etc/named.iscdlv.key";

	managed-keys-directory "/var/named/dynamic";
};

/etc/named.conf,假设咱们的域名是feedao.com文件中添加

zone "feedao.com" {
	type master;
	file "db.feedao.com";	
};

第六步:进入/var/named/,添加db.feedao.com,内容如下:

$TTL    604800
@       IN      SOA     feedao.com. www.feedao.com. (
                              3         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
@       IN      NS      feedao.com.
@       IN      A       192.168.56.101
registry     IN      A       192.168.56.101
*       IN      A       192.168.56.101

第七步:启动named服务:

service named start

第八步: 由于容器里面不能修改dns所在退出容器,修改/etc/resolv.conf:

mv /etc/resolv.conf /etc/resolv.conf.bak
echo "nameserver 192.168.56.103" >/etc/resolv.conf

第九步:测试,安装 bind-utils

yum -y install bind-utils

测试:

dig @192.168.56.103 . feedao.com

如果有反应就说明成功了。

第十步:去掉/etc/hosts里面的192.168.56.101 registry.feedao.com测试:

curl registry.feedao.com

会出现跟配置Hosts一样的效果,以后只要把新的机器的dns配置成192.168.56.103就好了。

后记:

这里只是完成了dns服务的安装和使用,写一个Dockerfile就可以制作成镜像了,后面有时间再写个脚本。 






你可能感兴趣的:(dns,docker,bind9)