这里我们使用的是腾讯云轻量应用服务器,因为我已经购买,而腾讯云最近推出了docker基础镜像,所以首次尝试一下。我这里选择Ubuntu20.04-Docker20是因为Debian系软件包普遍更新且占用更低
插播广告:腾讯云轻量双十一活动新用户只要70块就可以买一年的2C4G8M的国内轻量应用服务器,想买的可以点此直达 老用户得邀请新人购买才能领券,救救孩子!
从创建开始,本来是没什么问题了,问题在于腾讯云控制台这个坑爹的容器管理工具
使用shell窗口运行docker run命令创建
如果你是使用shell窗口执行以下docker run命令,那么恭喜你基本上没有任何问题就可以开始初始化AdGuard Home了。
代码语言:javascript复制docker run --name adguard --restart unless-stopped -v /home/adguard/work:/opt/adguardhome/work -v /home/adguard/conf:/opt/adguardhome/conf -p 443:443/tcp -p 443:443/udp -p 3000:3000/tcp -p 853:853/tcp -p 784:784/udp -p 853:853/udp -d adguard/adguardhome
注意,我这里没有设置80端口的放通,Web面板默认HTTP端口在初始化时请填写3000
参数说明
-p 53:53/tcp -p 53:53/udp
: 默认标准DNS端口,国内服务器请不要开启!-p 67:67/udp -p 68:68/tcp -p 68:68/udp
: 如果你想要使用DHCP功能,请增加此项-p 80:80/tcp -p 443:443/tcp -p 443:443/udp -p 3000:3000/tcp
: 如果你想使用 HTTPS/DNS-over-HTTPS ,请增加此项(默认,实际可用Nginx反向代理,所以换成其他非标端口也可,但3000端口TCP一定要添加,因为默认初始化端口为3000!).-p 853:853/tcp
: 如果你想使用 DNS-over-TLS,请增加此项.-p 784:784/udp -p 853:853/udp -p 8853:8853/udp
: 如果你想使用 DNS-over-QUIC ,请增加此项.-p 5443:5443/tcp -p 5443:5443/udp
: 如果你想使用 DNSCrypt ,请增加此项.
腾讯云控制台容器管理创建
这个功能是真的坑爹,要我说还不如直接给个窗口粘贴docker run
命令呢
首先,点击新建容器
,填写成下面的样子
然后重点来了,点击高级设置
,填写绑定的端口号,这里你绑定的所有服务器端口
一定要写成0.0.0.0:端口号
,就像下图那样!
这个问题是因为腾讯云的这个容器管理的绑定端口功能,默认绑定的地址全都是127.0.0.1,这导致了应用有奇怪的端口转发问题(docker监听端口了,但没有转发,猜测是因为adguard默认bind是0.0.0.0的原因!而如果你不带地址直接-p 端口号,docker默认的地址是0.0.0.0也就不会出现这个问题!)
还有就是腾讯云的容器管理我不知道如何添加
--restart unless-stopped
参数,在启动命令那个窗口编写,容器会返回[error] unknown option --restart
报错,正在跟腾讯云工程师对线中……
最终效果与上图差不多,点确定即可开始创建,几秒钟后提示创建完成即可打开浏览器输入服务器IP:3000
开始初始化AdGuard Home
如果使用了我的配置,网页管理界面端口号需要改为3000
剩下的配置就很随意了,按需配置即可。
参考内容
- adguard/adguardhome – Docker Image | Docker Hub