本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
alpine/sqlite 是基于 Alpine Linux 构建的轻量级 SQLite3 容器化镜像,集成了 SQLite3 数据库的命令行工具。SQLite3 是一款嵌入式关系型数据库,以其零配置、无需服务进程、文件型存储等特性广泛应用于轻量级数据存储场景。该镜像旨在提供快速、便捷的 SQLite3 运行环境,适用于开发测试、临时数据处理或轻量级应用的数据持久化需求。
通过 docker run 命令启动容器,指定数据库文件和需执行的 SQL 操作。核心语法如下:
docker run [选项] alpine/sqlite <数据库文件> <SQL命令|SQL脚本>
| 参数 | 说明 |
|---|---|
-ti | 分配交互式终端,支持命令行输入(用于交互式操作) |
--rm | 容器退出后自动删除,避免残留容器文件 |
-v <宿主机路径>:<容器路径> | 挂载宿主机目录到容器内,实现数据库文件持久化(必填,否则数据会丢失) |
-w <容器工作目录> | 设置容器内工作目录,建议与挂载路径一致,便于文件路径管理 |
SQLite3 数据库以单一文件存储,容器内默认无持久化存储,需通过挂载宿主机目录实现数据保留。示例中挂载当前目录到容器 /apps 目录,数据库文件将保存在宿主机当前路径下。
若指定的数据库文件(如 test.db)不存在,容器将自动创建。执行以下命令创建 users 表:
# 挂载当前目录到容器 /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);"
再次执行相同命令,因表已存在,将返回错误提示,确认表创建成功:
docker 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
宿主机当前目录下将生成 test.db 文件,验证数据持久化成功:
ls -l test.db
通过 -ti 参数进入 SQLite3 交互式终端,手动执行多条命令:
docker run -ti --rm -v $(pwd):/apps -w /apps alpine/sqlite test.db
进入终端后,可执行 SQL 命令(以 .exit 退出):
sqlite> INSERT INTO users (name) VALUES ('Alice'); sqlite> SELECT * FROM users; 1|Alice sqlite> .exit
将 SQL 命令写入脚本文件(如 init.sql),通过容器执行:
init.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);
docker run -ti --rm -v $(pwd):/apps -w /apps alpine/sqlite test.db < init.sql
通过交互式终端查询:
docker 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 实现更便捷的启动配置:
version: '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 # 保持标准输入打开
启动容器:
docker-compose up
进入交互式终端后即可执行 SQL 操作,数据保存在宿主机 ./data/test.db。
-v 参数挂载宿主机目录,否则容器退出后数据库文件将丢失。chmod 777 ./data,生产环境按需调整)。免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429