Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How to configure dockerized cloudbeaver #2035

Closed
AOne-T opened this issue Oct 3, 2023 · 7 comments
Closed

How to configure dockerized cloudbeaver #2035

AOne-T opened this issue Oct 3, 2023 · 7 comments
Labels
deployment feature request Let's add something new
Milestone

Comments

@AOne-T
Copy link

AOne-T commented Oct 3, 2023

Please, describe your question in details.
I'm running Cloudbeaver using docker-compose

  cloudbeaver:
    image: dbeaver/cloudbeaver:23.2.1
    container_name: cloudbeaver
    restart: always
    ports:
      - 8978:8978
    networks:
      - mynet
    volumes:
      - dbeaver-data:/opt/cloudbeaver/workspace

In docs (https://github.com/dbeaver/cloudbeaver/wiki/Server-configuration) I found that I can change parameter sqlTextPreviewMaxLength in cloudbeaver.conf. Should I make a copy of it from a container, attach it as a volume? Or is there another way?

@AOne-T AOne-T added question Further information is requested wait for review labels Oct 3, 2023
@EvgeniaBzzz
Copy link
Contributor

Hi, @AOne-T
If you would like to change default config for all future deployments, then you should copy-paste it and map config folder (you also should copy other config files).
If you would like to change existing deploy - just change this parameter in .cloudbeaver.runtime.conf.

@bkuhl
Copy link

bkuhl commented Oct 5, 2023

It would be awesome to see environment variable configuration capabilities baked into the container, generating the config file on startup.

@AOne-T
Copy link
Author

AOne-T commented Oct 6, 2023

I located cloudbeaver.conf in docker volume (/var/lib/docler/volumes/...). Changed the parameter and restarted container. It helped, but I don't think it is the best way

@bkuhl
Copy link

bkuhl commented Oct 6, 2023

That will work locally for a single project. I'm working with a more advanced setup where we use a .env to configure various aspects of the environment depending on where it's being run. Being able to control connection information such as host names, usernames, passwords via environment variables is pretty critical the portability of the application. Any kind of static file won't work.

@EvgeniaBzzz
Copy link
Contributor

Hi guys @AOne-T @bkuhl
We will implement this in future releases.
Thanks for a feature request!

@EvgeniaBzzz EvgeniaBzzz added feature request Let's add something new deployment and removed question Further information is requested wait for response labels Oct 9, 2023
@chardskarth
Copy link

chardskarth commented Jan 19, 2024

I successfully configured dbeaver to work behind an nginx. Had to tweak /opt/cloudbeaver/conf/cloudbeaver.conf's
server.rootURI from / to /dbeaver

Then in my nginx, I had to simply add this:

server {
  listen 80;
  server_name ${GENERIC_HOSTNAME};

  location /dbeaver {
    proxy_pass http://${DBEAVER_DOCKER_HOSTNAME}:${DBEAVER_DOCKER_PORT};
  }
}

Now i'm able to access http://localhost:3000/dbeaver (nginx)

But It was a bit tedious to configure.

  1. Had to copy /opt/cloudbeaver/conf/cloudbeaver.conf, tweak, and then add back as a volume
  2. I had to hard code the value. Specifying environment variable in the .conf file doesn't seem to work. I initially had this challenge with the nginx' docker, good thing an recent release allowed this feature! (adding in /etc/nginx/templates 🤘. See here)

An easier way to configure this please 🙏🙏


PS: Related -> #366

@EvgeniaBzzz
Copy link
Contributor

Environment variables were added in v.24.2.1
Server configuration will be updated soon.

Here are new variables with default values:

CLOUDBEAVER_SERVICE_PORT:8978
CLOUDBEAVER_WORKSPACE_LOCATION:workspace
CLOUDBEAVER_EXPIRE_SESSION_AFTER_PERIOD:1800000
CLOUDBEAVER_DEVEL_MODE:true
CLOUDBEAVER_APP_ANONYMOUS_ACCESS_ENABLED:true
CLOUDBEAVER_APP_DEFAULT_USER_TEAM:user
CLOUDBEAVER_APP_RESOURCE_MANAGER_ENABLED:true
CLOUDBEAVER_RESOURCE_QUOTA_DATA_EXPORT_FILE_SIZE_LIMIT:10000000
CLOUDBEAVER_RESOURCE_QUOTA_RESOURCE_MANAGER_FILE_SIZE_LIMIT:500000
CLOUDBEAVER_RESOURCE_QUOTA_SQL_MAX_RUNNING_QUERIES:100
CLOUDBEAVER_RESOURCE_QUOTA_SQL_RESULT_SET_ROWS_LIMIT:100000
CLOUDBEAVER_RESOURCE_QUOTA_SQL_TEXT_PREVIEW_MAX_LENGTH:4096
CLOUDBEAVER_RESOURCE_QUOTA_SQL_BINARY_PREVIEW_MAX_LENGTH:261120
CLOUDBEAVER_APP_SUPPORTS_CUSTOM_CONNECTIONS:false
CLOUDBEAVER_APP_READ_ONLY_CONNECTION_INFO:false

If anything is missing, please leave a comment here or create a new issue.
Thank you for being with CloudBeaver! 🦫

@EvgeniaBzzz EvgeniaBzzz added this to the 24.2.1 milestone Sep 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
deployment feature request Let's add something new
Projects
None yet
Development

No branches or pull requests

4 participants