1、创建 Core DNS目录:
mkdir -p /home/CoreDNS
cd /home/CoreDNS
2、创建docker-compose.yaml文件:
vim docker-compose.yaml
version: '3.7'
services:
coredns:
image: coredns/coredns:1.12.0
restart: always # 开机自启
container_name: coredns
ports:
- "53:53/udp"
volumes:
- ./config/Corefile:/Corefile
3、创建 config目录:
mkdir -p /home/CoreDNS/config
cd /home/CoreDNS/config
4、创建 Corefile目录:
vim Corefile
.:53 {
hosts {
10.121.101.56 a8.top.cs //写自己要解析的地址
10.121.100.21 a7.baidu.cs //写自己要解析的地址
fallthrough
}
forward . 223.5.5.5:53 114.114.114.114:53
log
}
5、给 Corefile文件权限:
chmod 744 /home/CoreDNS/config/Corefile
6、启动服务:
docker-compose up -d
docker-compose ps -a
docker-compose logs 容器名
docker-compose stop
docker-compose down -v
7、查看端口占用:
netstat -tunlp | grep 53
8、设置 docker-compose的 CoreDNS服务开机自启:
vim /etc/systemd/system/docker-compose-CoreDNS.service
[Unit]
Description=Docker Compose Application Service
Requires=docker.service
After=docker.service
[Service]
Type=oneshot
RemainAfterExit=yes
WorkingDirectory=/home/CoreDNS/ # 这写docker-compose.yml文件所在目录的位置
ExecStart=/usr/local/bin/docker-compose up -d
ExecStop=/usr/local/bin/docker-compose down
TimeoutStartSec=0
[Install]
WantedBy=multi-user.target
9、给权限、设置开机自启:
chmod 777 /etc/systemd/system/docker-compose-CoreDNS.service # 给权限
systemctl enable docker-compose-CoreDNS.service # 设置开机自启