
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
本镜像在 Alpine Linux 上运行 chrony 网络时间协议(NTP)实现。
主要用途:提供轻量级、容器化的NTP服务,用于网络中计算机的时间同步。可作为NTP客户端同步外部时间源,或作为NTP服务器为局域网内其他设备提供时间服务。
本Docker镜像官方支持以下架构,直接从https://hub.docker.com/r/cturra/ntp%E6%8B%89%E5%8F%96%E5%8D%B3%E5%8F%AF%E8%87%AA%E5%8A%A8%E8%8E%B7%E5%8F%96%E5%AF%B9%E5%BA%94%E6%9E%B6%E6%9E%84%E7%9A%84%E9%95%9C%E5%83%8F%EF%BC%9A
!Linux x86-64 !ARMv8 64-bit !IBM POWER8 !IBM Z Systems !Linux x86/i686 !ARMv7 32-bit !ARMv6 32-bit
拉取镜像
bashdocker pull cturra/ntp
基础运行
bashdocker run --name=ntp \ --restart=always \ --detach \ --publish=123:123/udp \ cturra/ntp
高安全性运行
启用只读文件系统及临时目录挂载,增强容器安全性:
bashdocker run --name=ntp \ --restart=always \ --detach \ --publish=123:123/udp \ --read-only \ --tmpfs=/etc/chrony:rw,mode=1750 \ --tmpfs=/run/chrony:rw,mode=1750 \ --tmpfs=/var/lib/chrony:rw,mode=1750 \ cturra/ntp
使用项目中的docker-compose.yml文件部署(需Docker Engine 19.03.0+,支持Compose格式3.9):
启动服务
bashdocker compose up -d ntp
查看日志(可选)
bashdocker compose logs ntp
在已配置的Swarm集群中部署:
部署栈
bashdocker stack deploy -c docker-compose.yml cturra
检查服务状态
bashdocker stack services cturra
查看日志(可选)
bashdocker service logs -f cturra_ntp
通过项目中的vars文件配置环境变量,执行构建和运行脚本:
构建镜像
bash./build.sh
运行容器
bash./run.sh
默认使用CloudFlare时间服务器(time.cloudflare.com)。可通过NTP_SERVERS环境变量指定自定义服务器,支持多个服务器(逗号分隔,无空格)。
配置方式
--env=NTP_SERVERS="服务器1,服务器2,..."environment中添加NTP_SERVERS: "服务器1,服务器2,..."示例
bash# CloudFlare(默认) NTP_SERVERS="time.cloudflare.com" # Google NTP_SERVERS="time1.google.com,time2.google.com,time3.google.com,time4.google.com" # 阿里云 NTP_SERVERS="ntp1.aliyun.com,ntp2.aliyun.com,ntp3.aliyun.com,ntp4.aliyun.com" # 本地离线模式(使用系统时钟) NTP_SERVERS="127.127.1.1"
禁用客户端日志(noclientlog)
默认启用客户端访问日志。设置NOCLIENTLOG=true可禁用日志,同时禁用NTP交错模式支持。
配置方式:--env=NOCLIENTLOG=true
通过LOG_LEVEL环境变量设置日志详细程度,对应chrony的-L选项,支持级别:
0:信息(默认)1:警告2:非致命错误3:致命错误配置方式:--env=LOG_LEVEL=级别
默认使用UTC时区。通过TZ环境变量指定时区(遵循标准TZ数据格式)。
示例(温哥华时区):
yamlenvironment: - TZ=America/Vancouver
当所有配置的NTP_SERVERS均支持NTS时,设置ENABLE_NTS=true启用NTS。
示例:
yamlenvironment: - NTP_SERVERS=time.cloudflare.com - ENABLE_NTS=true
注意:若任何服务器不支持NTS,启动时会提示超时错误(如
NTS-KE session with ... timed out)。
使用ntpdate工具查询容器提供的时间服务(替换<DOCKER_HOST_IP>为容器主机IP):
bashntpdate -q <DOCKER_HOST_IP>
示例输出
server 10.13.13.9, stratum 4, offset 0.000642, delay 0.02805 14 Mar 19:21:29 ntpdate[26834]: adjust time server 10.13.13.9 offset 0.000642 sec
通过容器内chronyc命令获取详细信息:
时间同步状态
bashdocker exec ntp chronyc tracking
对等服务器列表
bashdocker exec ntp chronyc sources
服务器统计信息
bashdocker exec ntp chronyc sourcestats
若日志中出现Could not step system clock,是因为chrony以-x选项运行,不修改宿主机时钟(设计如此,需通过NTP客户端从容器同步时间)。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务