How to configure dockerized cloudbeaver
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?
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.
It would be awesome to see environment variable configuration capabilities baked into the container, generating the config file on startup.
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
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.
Hi guys @AOne-T @bkuhl We will implement this in future releases. Thanks for a feature request!
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.
- Had to copy
/opt/cloudbeaver/conf/cloudbeaver.conf, tweak, and then add back as a volume - 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