fly6022
文章17
标签35
分类2
树莓派:基于docker利用ddns-go配置DDNS实现公网域名访问

树莓派:基于docker利用ddns-go配置DDNS实现公网域名访问

本文章以树莓派为例,基于Docker,利用ddns-go实现IPv6网络公网域名访问。

环境

设备:Raspberry Pi 4B(4GB RAM)

系统:Ubuntu 22.04 LTS(arm64)

你还需要

  • 个人域名

安装Docker

打开命令行,键入:

1
2
3
4
sudo su
sudo apt update
sudo apt upgrade
sudo apt install docker-ce

设置docker开启自启动:

1
systemctl enable docker.service

配置Docker

为了使ddns-go安装过程顺利,故需要提前更换Docker的安装源:

1
sudo nano /etc/docker/daemon.json

将Docker的安装源更换为下面内容:

1
2
3
4
5
6
7
8
9
10
{
"registry-mirrors": [
"https://do.nark.eu.org",
"https://dc.j8.work",
"https://docker.m.daocloud.io",
"https://dockerproxy.com",
"https://docker.mirrors.ustc.edu.cn",
"https://docker.nju.edu.cn"
]
}

输入下方命令重启服务:

1
2
systemctl daemon-reload
systemctl restart docker

键入下方命令检查是否更换成功:

1
docker info

ERROR

若终端报错,可重启终端重试。

若返回内容中包括以下内容,则证明更换成功。

1
2
3
4
5
6
7
Registry Mirrors:
https://do.nark.eu.org/
https://dc.j8.work/
https://docker.m.daocloud.io/
https://dockerproxy.com/
https://docker.mirrors.ustc.edu.cn/
https://docker.nju.edu.cn/

安装及配置ddns-go

在任意路径下新建文件夹:

1
mkdir ddns-go

在文件夹内创建 docker-compose.yml文件。

1
2
3
cd ddns-go
touch docker-compose.yml
nano docker-compose.yml
1
2
3
4
5
6
7
services:
ddns-go:
image: jeessy/ddns-go
restart: always
network_mode: "host"
volumes:
- ./ddns-go_data:/root

运行以下命令,安装ddns-go:

1
sudo docker compose up -d

安装成功后,在浏览器地址栏输入:http://[树莓派ip地址]:9876进入后台配置。

WARNING

ddns-go初始配置需要在5分钟之内完成,否则配置不能保存。

配置时,需要DNS平台的token,这里以Cloudflare为例进行配置。

在浏览器地址栏键入 https://dash.cloudflare.com/profile/api-tokens.

img

点击"创建令牌"→“编辑区域DNS(使用模板)”

img

配置后点击"继续以显示摘要"→创建令牌。

将生成的令牌粘贴到ddns-go后台中。

img

在IPv6的“Domains”一栏中添加好自己的域名,保存即可。

等待5分钟左右,即可通过域名从公网访问内容。

本文作者:fly6022
本文链接:https://blog.fly6022.fun/posts/%E6%A0%91%E8%8E%93%E6%B4%BE%EF%BC%9A%E5%9F%BA%E4%BA%8Edocker%E5%88%A9%E7%94%A8ddns-go%E9%85%8D%E7%BD%AEDDNS%E5%AE%9E%E7%8E%B0%E5%85%AC%E7%BD%91%E5%9F%9F%E5%90%8D%E8%AE%BF%E9%97%AE/
版权声明:除特殊说明以外,本文采用 署名-非商业性使用 4.0 国际 (CC BY-NC 4.0) 协议进行许可,转载请注明原出处。
×