如果你使用 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/sqlite 是基于 Alpine Linux 构建的轻量级 SQLite3 容器化镜像,集成了 SQLite3 数据库的命令行工具。SQLite3 是一款嵌入式关系型数据库,以其零配置、无需服务进程、文件型存储等特性广泛应用于轻量级数据存储场景。该镜像旨在提供快速、便捷的 SQLite3 运行环境,适用于开发测试、临时数据处理或轻量级应用的数据持久化需求。
通过 docker run 命令启动容器,指定数据库文件和需执行的 SQL 操作。核心语法如下:
bashdocker run [选项] alpine/sqlite <数据库文件> <SQL命令|SQL脚本>
| 参数 | 说明 |
|---|---|
-ti | 分配交互式终端,支持命令行输入(用于交互式操作) |
--rm | 容器退出后自动删除,避免残留容器文件 |
-v <宿主机路径>:<容器路径> | 挂载宿主机目录到容器内,实现数据库文件持久化(必填,否则数据会丢失) |
-w <容器工作目录> | 设置容器内工作目录,建议与挂载路径一致,便于文件路径管理 |
SQLite3 数据库以单一文件存储,容器内默认无持久化存储,需通过挂载宿主机目录实现数据保留。示例中挂载当前目录到容器 /apps 目录,数据库文件将保存在宿主机当前路径下。
步骤1:创建数据库和表
若指定的数据库文件(如 test.db)不存在,容器将自动创建。执行以下命令创建 users 表:
bash# 挂载当前目录到容器 /apps,在 /apps 目录下操作 test.db docker run -ti --rm -v $(pwd):/apps -w /apps alpine/sqlite test.db "CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT);"
步骤2:验证表已创建
再次执行相同命令,因表已存在,将返回错误提示,确认表创建成功:
bashdocker run -ti --rm -v $(pwd):/apps -w /apps alpine/sqlite test.db "CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT);"
输出:
Error: in prepare, table users already exists CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT); ^--- error here
步骤3:查看宿主机数据库文件
宿主机当前目录下将生成 test.db 文件,验证数据持久化成功:
bashls -l test.db
通过 -ti 参数进入 SQLite3 交互式终端,手动执行多条命令:
bashdocker run -ti --rm -v $(pwd):/apps -w /apps alpine/sqlite test.db
进入终端后,可执行 SQL 命令(以 .exit 退出):
sqlsqlite> INSERT INTO users (name) VALUES ('Alice'); sqlite> SELECT * FROM users; 1|Alice sqlite> .exit
将 SQL 命令写入脚本文件(如 init.sql),通过容器执行:
步骤1:创建脚本文件 init.sql
sqlCREATE TABLE products (id INTEGER PRIMARY KEY, name TEXT, price REAL); INSERT INTO products (name, price) VALUES ('Laptop', 4999.99); INSERT INTO products (name, price) VALUES ('Phone', 2999.99);
步骤2:执行脚本
bashdocker run -ti --rm -v $(pwd):/apps -w /apps alpine/sqlite test.db < init.sql
步骤3:验证数据
通过交互式终端查询:
bashdocker run -ti --rm -v $(pwd):/apps -w /apps alpine/sqlite test.db sqlite> SELECT * FROM products; 1|Laptop|4999.99 2|Phone|2999.99 sqlite> .exit
创建 docker-compose.yml 实现更便捷的启动配置:
yamlversion: '3' services: sqlite: image: alpine/sqlite volumes: - ./data:/apps # 宿主机 ./data 目录挂载到容器 /apps,持久化数据库文件 working_dir: /apps command: test.db # 启动后进入交互式终端(若需执行命令,替换为 "test.db 'SQL命令'") tty: true # 分配终端 stdin_open: true # 保持标准输入打开
启动容器:
bashdocker-compose up
进入交互式终端后即可执行 SQL 操作,数据保存在宿主机 ./data/test.db。
-v 参数挂载宿主机目录,否则容器退出后数据库文件将丢失。chmod 777 ./data,生产环境按需调整)。您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。


来自真实用户的反馈,见证轩辕镜像的优质服务