
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
arlocal是一个本地Arweave网关类服务器,为Arweave开发提供本地测试环境。它允许开发者在本地模拟Arweave网络,进行交易测试、智能合约部署、GraphQL请求验证等开发工作,无需连接真实Arweave主网,大幅降低开发测试成本。
确保已安装NodeJS和NPM环境,通过npx直接运行最新版本:
bashnpx arlocal
默认将在http://localhost:1984启动本地网关服务。
自定义端口
如需指定端口,在命令后添加端口号:
bashnpx arlocal 8080
这将在8080端口启动arlocal服务。
其他选项
--hidelogs:隐藏arlocal的运行日志输出可将arlocal集成到代码中,确保开发和测试环境一致性。
安装依赖
bash# 使用yarn yarn add arlocal -D # 或使用npm npm install arlocal --save-dev
基础使用示例
typescriptimport ArLocal from 'arlocal'; (async () => { // 创建ArLocal实例 const arLocal = new ArLocal(); // 启动服务(异步操作) await arLocal.start(); // 执行测试代码... console.log(`ArLocal running on http://localhost:${arLocal.port}`); // 测试完成后停止服务 await arLocal.stop(); })();
配置选项
ArLocal类构造函数支持以下可选参数:
typescriptArLocal(port = 1984, showLogs = true, dbPath = '.db', persist = false)
port:服务端口,默认为1984showLogs:是否显示运行日志,默认为truedbPath:数据库临时存储目录,默认为.dbpersist:是否在服务器重启后保留数据,默认为false(不保留)铸造AR***:向指定地址铸造AR,访问端点/mint/<address>/<balance>(例如http://localhost:1984/mint/your-wallet-address/1000000000000)
创建并发送交易:使用ArweaveJS创建、签名并发送交易,流程与主网网关完全一致
确认交易:通过访问/mine端点确认(挖矿)交易:
http://localhost:1984/minehttp://localhost:1984/mine/{blocks}(如/mine/5挖矿5个区块)bash# 默认配置运行(端口1984,显示日志) docker run -p 1984:1984 node npx arlocal # 自定义端口运行 docker run -p 8080:8080 node npx arlocal 8080 # 隐藏日志运行 docker run -p 1984:1984 node npx arlocal --hidelogs
yamlversion: '3' services: arlocal: image: node:latest container_name: arlocal ports: - "1984:1984" command: npx arlocal # 可选:持久化数据(需设置persist=true) volumes: - ./arlocal-db:/root/.db environment: - NODE_ENV=development restart: unless-stopped
arlocal欢迎社区贡献,帮助完善这一重要开发工具。提交PR前请注意:实现网关路由或现有功能时,需保持与Arweave主网网关相同的路径和默认值(例如/tx路径应保持不变),以减少用户在单元测试与主网交易之间的修改成本。
贡献步骤:
git checkout -b my-featuregit commit -am 'Add some feature'git push origin my-new-feature您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务