首页 > 解决方案 > 将 Docker Sqlite 容器连接到 Java

问题描述

我只是在网上找不到正确的信息。

我计划用 Docker 运行 sqlite,以便可以将信息保存到本地卷。我的 Dockerfile 是

FROM alpine:3.14
RUN apk add --update sqlite
RUN mkdir /db
WORKDIR /db
ENTRYPOINT ["sqlite3"]
CMD ["mydb.db"]

docker run -p 5000:5000 -v `passwd`:/db my-sqlite mydb.db

如何将它挂载到卷上,以便将数据持久保存到磁盘?现在我需要连接字符串 - 从 Java 项目进行连接。这会是什么?我想在启动程序时从这个数据库加载数据,这将如何完成?

标签: javadockersqlite

解决方案


您对 sqlite 有很大的误解。Sqlite 是一个嵌入式数据库——这意味着它不需要服务器来运行,而是在应用程序中运行。

因此,您需要将*.db文件挂载到应用程序的容器中并使用 sqlite 的 JDBC 驱动程序才能使用数据库。

据我所知,sqlite 甚至不支持任何形式的远程连接,因为这不是它的用途。


推荐阅读