
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
nfs-server-alpine是一个轻量级NFS服务器镜像,基于Alpine Linux构建,仅支持NFS v4协议,通过TCP端口2049提供文件共享服务。该镜像设计简洁、体积小巧,适用于需要快速部署NFS服务的场景,如容器间文件共享、开发环境资源共享等。
bashdocker run -d --name nfs --privileged -v /本地目录:/nfsshare -e SHARED_DIRECTORY=/nfsshare docker.xuanyuan.run/itsthenetwork/nfs-server-alpine:latest
--net=host或-p 2049:2049参数| 环境变量 | 描述 | 默认值 |
|---|---|---|
| SHARED_DIRECTORY | 指定要共享的目录路径 | 无(必须设置) |
| READ_ONLY | 设置共享目录为只读模式 | 未设置(默认为读写模式) |
| SYNC | 启用同步写入模式 | 未设置(默认为异步模式) |
| PERMITTED | 指定允许访问的客户端IP范围(支持通配符) | *(允许所有客户端) |
NFS服务需要特定的系统权限,推荐使用--privileged模式运行。也可尝试使用以下能力集替代:
bash--cap-add SYS_ADMIN --cap-add SETPCAP --security-opt=no-new-privileges
bash# 基本挂载 sudo mount -v 服务器IP:/ /本地挂载点 # 显式指定NFS v4 sudo mount -v -o vers=4,loud 服务器IP:/ /本地挂载点 # 卸载 sudo umount /本地挂载点
yamlversion: '3' services: nfs-server: image: docker.xuanyuan.run/itsthenetwork/nfs-server-alpine:latest privileged: true volumes: - /本地目录:/nfsshare environment: - SHARED_DIRECTORY=/nfsshare - PERMITTED=192.168.1.* - SYNC=true ports: - "2049:2049"
yamlapiVersion: v1 kind: Pod metadata: name: nfs-server spec: containers: - name: nfs-server image: docker.xuanyuan.run/itsthenetwork/nfs-server-alpine:latest securityContext: privileged: true volumeMounts: - name: nfs-data mountPath: /nfsshare env: - name: SHARED_DIRECTORY value: /nfsshare - name: PERMITTED value: "10.244.0.*" volumes: - name: nfs-data hostPath: path: /本地目录
通过挂载子目录并设置额外环境变量实现多目录共享:
bashdocker run -d --name nfs --privileged \ -v /本地目录1:/nfsshare \ -v /本地目录2:/nfsshare/another \ -e SHARED_DIRECTORY=/nfsshare \ -e SHARED_DIRECTORY_2=/nfsshare/another \ docker.xuanyuan.run/itsthenetwork/nfs-server-alpine:latest
客户端挂载:
bashsudo mount -v 服务器IP:/ /挂载点1 sudo mount -v 服务器IP:/another /挂载点2
OverlayFS不支持NFS导出,需将共享目录挂载到其他文件系统(如ext4)。在RancherOS上推荐使用/home、/media或/mnt目录。
需启用内核头文件服务:
bashsudo ros service enable kernel-headers sudo ros service up kernel-headers
或在cloud-config.yml中添加:
yaml#cloud-config rancher: services_include: kernel-headers: true
部分操作系统需手动加载NFS内核模块:
bashmodprobe nfs nfsd
成功启动的日志示例:
Writing SHARED_DIRECTORY to /etc/exports file The PERMITTED environment variable is unset or null, defaulting to '*'. This means any client can mount. The READ_ONLY environment variable is unset or null, defaulting to 'rw'. Clients have read/write access. The SYNC environment variable is unset or null, defaulting to 'async' mode. Writes will not be immediately written to disk. Displaying /etc/exports contents: /nfsshare *(rw,fsid=0,async,no_subtree_check,no_auth_nlm,insecure,no_root_squash) Starting rpcbind... Displaying rpcbind status... program version netid address service owner 100000 4 tcp6 ::.0.111 - superuser 100000 3 tcp6 ::.0.111 - superuser ... Startup successful.
dockerfileFROM alpine:latest LABEL maintainer "Steven Iveson <***>" LABEL source "https://github.com/sjiveson/nfs-server-alpine" LABEL branch "master" COPY Dockerfile README.md / RUN apk add --no-cache --update --verbose nfs-utils bash iproute2 && \ rm -rf /var/cache/apk /tmp /s***/halt /s***/poweroff /s***/reboot && \ mkdir -p /var/lib/nfs/rpc_pipefs /var/lib/nfs/v4recovery && \ echo "rpc_pipefs /var/lib/nfs/rpc_pipefs rpc_pipefs defaults 0 0" >> /etc/fstab && \ echo "nfsd /proc/fs/nfsd nfsd defaults 0 0" >> /etc/fstab COPY exports /etc/ COPY nfsd.sh /usr/***/nfsd.sh COPY .bashrc /root/.bashrc RUN chmod +x /usr/***/nfsd.sh ENTRYPOINT ["/usr/***/nfsd.sh"]
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务