linuxserver/adguardhome-sync是由LinuxServer.io团队维护的Docker镜像,用于运行Adguardhome-sync工具。该工具的主要功能是将AdGuardHome的配置同步到多个副本实例,确保所有AdGuardHome实例的配置保持一致。镜像特点包括定期应用更新、简单的用户映射(PGID、PUID)、基于s6 overlay的自定义基础镜像,以及每周基础操作系统更新和安全更新。
该镜像利用Docker manifest实现多平台支持,拉取lscr.io/linuxserver/adguardhome-sync:latest即可自动获取适合当前架构的镜像,也可通过标签指定特定架构:
| 架构 | 支持情况 | 标签 |
|---|---|---|
| x86-64 | ✅ | amd64- |
| arm64 | ✅ | arm64v8- |
需编辑adguardhome-sync.yaml配置文件,填入AdGuardHome实例详情(主实例和副本实例的地址、认证信息等)。详细配置说明可参考AdGuardHome Sync***文档。
该镜像支持以只读容器文件系统方式运行,详情请参阅LinuxServer.io只读文档。
该镜像支持以非root用户身份运行,详情请参阅LinuxServer.io非root文档。
yaml--- services: adguardhome-sync: image: lscr.io/linuxserver/adguardhome-sync:latest container_name: adguardhome-sync environment: - PUID=1000 # 用户ID - PGID=1000 # 组ID - TZ=Etc/UTC # 时区 - CONFIGFILE=/config/adguardhome-sync.yaml # 自定义配置文件路径(可选) volumes: - /path/to/adguardhome-sync/config:/config # 配置文件目录 ports: - 8080:8080 # Web API端口 restart: unless-stopped
bashdocker run -d \ --name=adguardhome-sync \ -e PUID=1000 \ -e PGID=1000 \ -e TZ=Etc/UTC \ -e CONFIGFILE=/config/adguardhome-sync.yaml `# 可选:自定义配置文件路径` \ -p 8080:8080 \ -v /path/to/adguardhome-sync/config:/config \ --restart unless-stopped \ lscr.io/linuxserver/adguardhome-sync:latest
容器运行时通过参数进行配置,格式为<外部>:<内部>:
| 参数 | 功能 |
|---|---|
-p 8080:8080 | AdGuardHome Sync的Web API端口 |
-e PUID=1000 | 用户ID,用于权限映射 |
-e PGID=1000 | 组ID,用于权限映射 |
-e TZ=Etc/UTC | 时区设置,参考时区列表 |
-e CONFIGFILE=/config/adguardhome-sync.yaml | 自定义配置文件路径(可选) |
-v /config | 配置文件存储目录 |
--read-only=true | 以只读文件系统运行容器(需参考只读文档) |
--user=1000:1000 | 以非root用户运行容器(需参考非root文档) |
可通过FILE__前缀从文件中设置环境变量,例如:
bash-e FILE__MYVAR=/run/secrets/mysecretvariable
这会将MYVAR环境变量的值设置为/run/secrets/mysecretvariable文件的内容。
可通过-e UMASK=022覆盖默认umask设置,用于调整容器内服务的文件权限。umask通过减法调整权限,而非直接设置权限,详情请参考umask说明。
使用卷(-v参数)时,主机与容器可能出现权限问题。通过指定PUID(用户ID)和PGID(组ID),确保主机卷目录与容器内用户权限一致。使用以下命令获取当前用户的PUID和PGID:
bashid your_user
示例输出:
textuid=1000(your_user) gid=1000(your_user) groups=1000(your_user)
LinuxServer.io提供多种Docker Mods以扩展容器功能。上述徽章链接可查看适用于此镜像的Mods及通用Mods。
容器内Shell访问:
bashdocker exec -it adguardhome-sync /bin/bash
实时日志监控:
bashdocker logs -f adguardhome-sync
容器版本号:
bashdocker inspect -f '{{ index .Config.Labels "build_version" }}' adguardhome-sync
镜像版本号:
bashdocker inspect -f '{{ index .Config.Labels "build_version" }}' lscr.io/linuxserver/adguardhome-sync:latest
大部分镜像为静态版本,需更新镜像并重建容器以更新应用。更新步骤如下:
更新镜像:
所有镜像:
bashdocker-compose pull
单个镜像:
bashdocker-compose pull adguardhome-sync
更新容器:
所有容器:
bashdocker-compose up -d
单个容器:
bashdocker-compose up -d adguardhome-sync
清理旧镜像:
bashdocker image prune
更新镜像:
bashdocker pull lscr.io/linuxserver/adguardhome-sync:latest
停止运行中的容器:
bashdocker stop adguardhome-sync
删除容器:
bashdocker rm adguardhome-sync
使用相同参数重建容器(配置文件通过卷映射时会保留)
清理旧镜像:
bashdocker image prune
[!TIP] 推荐使用Diun接收更新通知。不建议使用自动更新容器的工具。
如需本地修改或自定义镜像:
bashgit clone [***] cd docker-adguardhome-sync docker build \ --no-cache \ --pull \ -t lscr.io/linuxserver/adguardhome-sync:latest .
可使用lscr.io/linuxserver/qemu-static在x86_64硬件上构建ARM变体,反之亦然:
bashdocker run --rm --privileged lscr.io/linuxserver/qemu-static --reset
注册后,可使用-f Dockerfile.aarch64指定架构对应的Dockerfile。
来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429