Closed geleou closed 1 month ago
I forgot the step to build and run the Docker image:
services:
cloudbeaver:
image: cloudbeaver-vertica
container_name: cloudbeaver
restart: unless-stopped
docker build -t cloudbeaver-vertica .
docker compose up -d && docker compose logs -f
Hello @geleou
Could you please take a look at this ticket? https://github.com/dbeaver/cloudbeaver/issues/2611 Also, why do you use the PostgreSQL driver for Vertica? Or is this an example of configuration?
Hi @geleou We appreciate your interest and feedback 🦫
Answering your questions:
<driver id=vertica:vertica-jdbc-8"/>
, it's working one.Hello @geleou
Could you please take a look at this ticket? #2611 Also, why do you use the PostgreSQL driver for Vertica? Or is this an example of configuration?
My mistake I copy pasted the postgres pom.xml not the Vertica.
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>drivers.vertica</artifactId>
<version>1.0.0</version>
<parent>
<groupId>io.cloudbeaver</groupId>
<artifactId>drivers</artifactId>
<version>1.0.0</version>
<relativePath>../</relativePath>
</parent>
<properties>
<deps.output.dir>vertica</deps.output.dir>
</properties>
<dependencies>
<dependency>
<groupId>com.vertica</groupId>
<artifactId>vertica-jdbc</artifactId>
<version>24.1.0-0</version>
<scope>system</scope>
<systemPath>/opt/cloudbeaver/server/drivers/vertica/vertica-jdbc-24.1.0-0.jar</systemPath>
</dependency>
</dependencies>
</project>
I will try out the suggested solution and will come back. Thank you so much! <3
It works!!! Thank you so much!! <3
Thanks for the feedback.
Greetings! I'm currently in the process of deploying Cloudbeaver CE within a Docker container, attempting to establish comms with a Vertica Database.
The first issue I'd like to point out, is that if someone wishes to deploy Cloudbeaver from within a container (I suppose that's something quite natural for a cloud-oriented application), there seems to be no way of configuring a 3rd party driver (like Vertica), without having to rebuild the image yourself (or run the app locally). Why would configuring a separate database driver require for building the app from the ground up (unless I'm missing something)? Also there should be more clear instructions on how to actually run the app from within a container in that case (the default Dockerfile mentioned here will not work - it clones the already built git repo as is).
The other issue I'm facing is that even though I've followed all steps to adding a new Vertica driver in cloudbeaver, the web UI does not seem to be able to list it when creating a new connection.
Steps to reproduce:
git clone https://github.com/dbeaver/cloudbeaver.git
Set environment variables to prevent interactive prompts
ENV DEBIAN_FRONTEND=noninteractive
Install required packages
RUN apt-get update && apt-get install -y \ curl \ gnupg2 \ openjdk-17-jdk \ git \ build-essential
Install Maven 3.9.0 manually to ensure the correct version
RUN curl -sL https://archive.apache.org/dist/maven/maven-3/3.9.0/binaries/apache-maven-3.9.0-bin.tar.gz -o /tmp/maven.tar.gz && \ tar -xzf /tmp/maven.tar.gz -C /opt && \ ln -s /opt/apache-maven-3.9.0 /opt/maven && \ ln -s /opt/maven/bin/mvn /usr/bin/mvn
Add Yarn repository and install Node.js 20.x and Yarn
RUN curl -sL https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - && \ echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list && \ curl -sL https://deb.nodesource.com/setup_20.x | bash - && \ apt-get update && apt-get install -y yarn nodejs
Uninstall conflicting packages related to Node.js 12.x
RUN apt-get remove -y libnode72 libnode-dev
RUN apt-get purge -y libnode72 libnode-dev || true
Set up working directory
WORKDIR /opt/cloudbeaver
Copy the local CloudBeaver repository into the container
COPY cloudbeaver/. .
Set the working directory to the deploy folder
WORKDIR /opt/cloudbeaver/deploy
Build the application using the existing build.sh script
RUN ./build.sh
Expose the default port CloudBeaver uses
EXPOSE 8978
WORKDIR /opt/cloudbeaver/deploy/cloudbeaver
Set up the entry point to run the CloudBeaver server
RUN chmod +x run-server.sh
Set the command to run the script
ENTRYPOINT ["./run-server.sh"]
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
...
...
... <?xml version="1.0" encoding="UTF-8"?>
...
services: cloudbeaver: image: cloudbeaver-vertica container_name: cloudbeaver restart: unless-stopped
ports:
docker build -t cloudbeaver-vertica . docker compose up -d && docker compose logs -f