
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
本Docker镜像包含V语言(vlang.io)的最新开发版本,旨在为V语言开发者提供一致、隔离且便捷的开发环境。镜像集成了V编译器及核心工具链,可直接用于V语言项目的开发、测试及特性验证,避免本地环境依赖冲突,简化跨平台开发流程。
v run(即时运行)、v fmt(代码格式化)、v test(单元测试)、v doc(文档生成)等核心开发工具。apk)安装额外工具(如git、make等),满足复杂项目需求。通过Docker Hub或私有仓库拉取镜像(假设镜像名称为vlang/dev:latest,实际使用时替换为具体镜像源):
bashdocker pull vlang/dev:latest
验证镜像可用性
运行容器并查看V版本,确认环境正常:
bashdocker run --rm -it vlang/dev:latest v version
输出示例:
V 0.4.4 7a3b2c1 (latest development build)
运行交互式开发环境
启动容器并进入交互式终端,直接在容器内编写代码:
bashdocker run --rm -it vlang/dev:latest sh
在容器终端中,可通过v new myproject创建项目,或使用v run test.v运行代码文件。
为实现本地代码与容器环境的同步,需将宿主项目目录挂载至容器内:
bash# 假设宿主项目路径为./my-v-project,挂载至容器内/app目录 docker run --rm -it -v $(pwd)/my-v-project:/app vlang/dev:latest sh
进入容器后,通过cd /app即可访问并操作本地项目文件,编译运行命令与本地一致(如v build myapp.v)。
通过-e参数设置环境变量,自定义编译行为或环境参数:
| 环境变量 | 说明 | 默认值 |
|---|---|---|
VFLAGS | 全局编译参数(如-prod启用优化) | 空 |
VUPDATED | 启动时是否自动更新V至最新开发版(true/false) | false |
WORKDIR | 容器工作目录 | /app |
示例:启用编译优化并自动更新V版本
bashdocker run --rm -it -e VFLAGS="-prod" -e VUPDATED="true" vlang/dev:latest sh
通过docker-compose.yml定义服务,简化多环境配置(如挂载目录、端口映射、依赖工具安装):
yamlversion: '3.8' services: v-dev: image: vlang/dev:latest container_name: v-dev-env volumes: - ./my-v-project:/app # 挂载本地项目 - v-cache:/root/.v # 持久化V缓存(加速后续编译) environment: - VFLAGS="-show-timings" # 显示编译耗时 - VUPDATED="true" tty: true # 保持终端交互 stdin_open: true volumes: v-cache: # 定义命名卷,持久化V缓存
启动服务:
bashdocker-compose up -d && docker-compose exec v-dev sh
VFLAGS:编译时附加参数,支持V编译器所有命令行选项(如-prod优化、-w忽略警告、-cc指定C编译器等)。VUPDATED:设为true时,容器启动时自动执行v up命令,将V更新至最新开发版(需联网)。WORKDIR:指定容器内默认工作目录,挂载项目时建议与该目录一致,避免路径切换。如需在容器内添加额外工具(如git、curl),可通过Alpine包管理器安装:
bash# 在容器终端内执行 apk add --no-cache git curl
-v挂载至容器,否则容器销毁后代码会丢失。--user $(id -u):$(id -g)参数指定当前用户ID,避免文件权限冲突。-p <宿主端口>:<容器端口>映射端口(如-p 8080:8080)。您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务