为了账号安全,请及时绑定邮箱和手机立即绑定

如何将 SQL Server Java 驱动程序安装到 Linux docker 容器中?

如何将 SQL Server Java 驱动程序安装到 Linux docker 容器中?

30秒到达战场 2023-07-13 14:28:15
根据文档,下面的 docker 映像定义不包含 SQL Server 驱动程序。我该如何安装它?文档: https: //github.com/camunda/docker-camunda-bpm-platformDocker 文件FROM alpine:3.10 as builderARG VERSION=7.12.0ARG DISTRO=tomcatARG SNAPSHOT=trueARG EE=falseARG USERARG PASSWORDRUN apk add --no-cache \        ca-certificates \        maven \        tar \        wget \        xmlstarletCOPY settings.xml download.sh camunda-tomcat.sh camunda-wildfly.sh  /tmp/RUN /tmp/download.sh##### FINAL IMAGE #####FROM alpine:3.10ARG VERSION=7.12.0ENV CAMUNDA_VERSION=${VERSION}ENV DB_DRIVER=org.h2.DriverENV DB_URL=jdbc:h2:./camunda-h2-dbs/process-engine;MVCC=TRUE;TRACE_LEVEL_FILE=0;DB_CLOSE_ON_EXIT=FALSEENV DB_USERNAME=saENV DB_PASSWORD=ENV DB_CONN_MAXACTIVE=20ENV DB_CONN_MINIDLE=5ENV DB_CONN_MAXIDLE=20ENV DB_VALIDATE_ON_BORROW=falseENV DB_VALIDATION_QUERY="SELECT 1"ENV SKIP_DB_CONFIG=ENV WAIT_FOR=ENV WAIT_FOR_TIMEOUT=30ENV TZ=UTCENV DEBUG=falseENV JAVA_OPTS="-Xmx768m -XX:MaxMetaspaceSize=256m"EXPOSE 8080 8000# Downgrading wait-for-it is necessary until this PR is merged# https://github.com/vishnubob/wait-for-it/pull/68RUN apk add --no-cache \        bash \        ca-certificates \        openjdk11-jre-headless \        tzdata \        tini \        xmlstarlet \    && wget -O /usr/local/bin/wait-for-it.sh \      "https://raw.githubusercontent.com/vishnubob/wait-for-it/a454892f3c2ebbc22bd15e446415b8fcb7c1cfa4/wait-for-it.sh" \    && chmod +x /usr/local/bin/wait-for-it.shRUN addgroup -g 1000 -S camunda && \    adduser -u 1000 -S camunda -G camunda -h /camunda -s /bin/bash -D camundaWORKDIR /camundaUSER camundaENTRYPOINT ["/sbin/tini", "--"]CMD ["./camunda.sh"]COPY --chown=camunda:camunda --from=builder /camunda .
查看完整描述

2 回答

?
阿波罗的战车

TA贡献1862条经验 获得超6个赞

几天后我就能让它工作了。

脚步

  1. 从 Microsoft 站点下载 JDBC 驱动程序版本 7.2,它将包含 2 个 JAR 文件

  2. 解压并将文件复制到 docker 文件夹中

  3. 将文件复制到 camunda LIB 文件夹中,这在任何地方都没有解释,但在与 camunda docker git repo 人员短暂交谈后,他们建议我这样做。

只需要在 DOCKER 文件中添加以下行:

#MSSQL SERVER JDBC DRIVER INSTALL
COPY mssql-jdbc-7.2.2.jre11.jar /camunda/lib/


查看完整回答
反对 回复 2023-07-13
?
慕哥6287543

TA贡献1831条经验 获得超10个赞

根据您参考的文档,不支持 Microsoft SQL Server。

因此,虽然您可以尝试下载 JDBC 驱动程序,然后将其添加到 Docker 映像和类路径中:

COPY name_of_jdbc_driver.jar /camunda/mssqlserver.jdbc
env CLASSPATH=/camunda/mssqlserver.jdbc

这很可能行不通,因为 camunda 软件不支持 MS SQL Server。

因此,您应该考虑简单地使用它们明确支持的其他数据库之一。例如,我推荐 PostgreSQL。它是免费的(就像啤酒和语音一样),如果您愿意,您可以在生产中使用它。

如果您只是想进行一些测试并且在生产环境中不需要这样做。您指出的说明对如何在 Docker 容器中启动 PostgreSQL,然后启动使用 PostgreSQL 容器作为数据库的 Camunda 容器进行了很好的解释。


查看完整回答
反对 回复 2023-07-13
  • 2 回答
  • 0 关注
  • 96 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信