快速搭建Adguard Home docker

时隔这么久突然更新一篇,真的很奇怪诶

快速搭建一个Adguard home dns解析服务器

  1. 首先咱们需要一个centos机器

    现阶段来说的话,centos7相对centos8来说会更稳定,而且锅少一点,所以暂时用centos7来配置。

  2. 连接到ssh

  3. 安装docker

    1. 卸载残留,老版本可能叫做dockerdocker-engine

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      sudo yum remove docker \
      docker-client \
      docker-client-latest \
      docker-common \
      docker-latest \
      docker-latest-logrotate \
      docker-logrotate \
      docker-selinux \
      docker-engine-selinux \
      docker-engine
    2. 安装依赖

      1
      sudo yum install -y yum-utils   device-mapper-persistent-data   lvm2
    3. 安装软件源

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      sudo yum-config-manager \
      --add-repo \
      https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

      sudo sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo

      # 官方源
      # $ sudo yum-config-manager \
      # --add-repo \
      # https://download.docker.com/linux/centos/docker-ce.repo
    4. 安装docker

      1
      sudo yum install docker-ce docker-ce-cli containerd.io
  4. 安装Adguard Home docker

    1. 拉取image

      1
      docker pull adguard/adguardhome
    2. 设置端口映射。但这些端口可能存在冲突,建议映射部分或者修改映射到外部的端口。

      1
      docker run --name adguardhome -v /home/dayi/adguard/workdir:/opt/adguardhome/work -v /home/dayi/adguard/confdir:/opt/adguardhome/conf -p 53:53/tcp -p 53:53/udp -p 67:67/udp -p 68:68/tcp -p 68:68/udp -p 80:80/tcp -p 443:443/tcp -p 853:853/tcp -p 3000:3000/tcp -d adguard/adguardhome

      同时两个配置文件分别映射在

      /opt/adguardhome/work -> /home/dayi/adguard/workdir

      /opt/adguardhome/conf->/home/dayi/adguard/confdir

    3. 进入管理界面

      http://服务器ip:3000

      然后进行基本的配置就好辽~

  5. 配置开机自启服务

    1. 配置docker 自启

      1
      2
      3
      systemctl    enable docker.servicesystemctl    enable docker.service
      docker-machine restart&&eval "$(docker-machine env default)"&&docker-machine env
      systemctl enable docker

      理论这几条都写上就可以辽~

    2. 配置adguard自启

      1
      docker  update  --restart=always adguardhome

      会复读adguardhome

  6. 配置虚拟机开机自启(可选,仅特殊环境_vmware_windows)

    开机自启

    1
    "C:\Program Files (x86)\VMware\VMware Workstation\vmrun.exe" start "D:\VM_share\centos7\centos7.vmx" nogui

    关机挂起

    1
    "C:\Program Files (x86)\VMware\VMware Workstation\vmrun.exe" suspend "D:\VM_share\centos7\centos7.vmx" nogui
  7. Enjoy it !

    此时DNS服务器IP为你的服务器ip

其他的小的配置

  1. 上游DNS,因为可能链接不稳定,导致出现一些奇怪的解析失败。

    设置位置:http://ip:3000/#dns

    1. 设置为并行请求

    2. 上游DNS服务器

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      tls://8.8.8.8
      tls://8.8.4.4
      tls://dns.google
      114.114.114.114
      119.29.29.29
      223.5.5.5
      119.29.29.29
      1.2.4.8
      tls://dns.adguard.com
      tls://1.1.1.1
      tls://1.0.0.1
      https://dns10.quad9.net/dns-query
      8.8.8.8
  1. 过滤清单

    设置位置:http://ip:3000/#filters

    由于暂时没有测试完全,暂时推荐一些

    名称 地址
    Halflife https://gitee.com/halflife/list/raw/master/ad.txt