个人项目访问量并不大,需要一个微型数据库存储,采用了 H2 数据库。
为了方便迁移,讲 server 端调整到了 docker 中,把数据挂载到外面,镜像内数据存储目录为 /h2/data,挂载到当前启动用户 docker 容器的用户根目录的.h2_data 目录下。也就是 ${HOME}/.h2_data 目录下。
dockerfile 文件:
比较简单,暴露端口,把 h2 数据库 jar 包 copy 进去,创建挂载目录,然后启动执行。
from jdk1.8:latest
RUN mkdir -p /h2/data && mkdir -p /h2/log
COPY h2-1.4.190.jar /webapp
COPY entrypoint.sh /webapp
VOLUME /h2
CMD /webapp/entrypoint.sh
docker-compose.yml
version: '2.1'
services:
h2_server:
build:
context: ./
dockerfile: Dockerfile
image: h2_server:latest
volumes:
- "${HOME}/.h2_data:/h2"
ports:
- "29099:29099"
restart: always
entrypoint.sh
#!/bin/bash
dir=$(dirname "$0")
#echo $dir
java -cp "$dir/h2-1.4.190.jar:$H2DRIVERS:$CLASSPATH" org.h2.tools.Server -baseDir /h2/data -tcpAllowOthers -tcpPort 29099 -webAllowOthers "$@" > /h2/log/db_h2_run.log 2>&1
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于