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,生产环境按需调整)。您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务