DBeaver CE in a container for Windows, Mac or Linux host
1.5K
This is DBeaver Community Edition database tool (dbeaver.io) run in a Docker container. It was built and tested on Windows host, but should run on Mac or Linux also.
As it is a GUI application it needs X11 server running on a host - VcXsrv (sourceforge.net/projects/vcxsrv) is a good option for Windows.
You can use any X11 server. The command bellow shows start of VcXsrv on Windows:
vcxsrv.exe :0 -ac +bs -reset -terminate -dpi auto -render color -lesspointer -multiwindow -multimonitors +xinerama -clipboard -emulate3buttons -hostintitle -keyhook -wgl -swrastwgl -winkill
This will enable to start docker application in a standard window with clipboard mapped to/from container.
To start the app run:
docker run -d --rm -v $HOSTCONFIG:/config:rw -v $HOSTSTORAGE:/storage:rw microsnailapps/dbeaver-ce
The -v $HOSTCONFIG:/config part of the command mounts $HOSTCONFIG directory from the underlying host system as /config inside the container, where DBeaver will store its profile data. The -v $HOSTSTORAGE:/storage then gives DBeaver access to the scripts and other data on the host system. You can omit storage mount if you don't need it.
NOTE: for Linux host you should also add mount of X11 directory like -v /tmp/.X11-unix:/tmp/.X11-unix.
To access services on host system (e.g. database), use host.docker.internal as hostname (supported by default on Docker Desktop for Win and Mac from 18.03).
Most of settings are built into the image, however some of them can be changed on runtime via environment variables or commands.
The default timezone of the image is Europe/Prague. However, you can change it by passing environment variable on container start -e "TZ=$YOURTIMEZONE".
The default DISPLAY value is host.docker.internal:0.0, which resolves to host address in Docker Desktop for Windows and Mac from version 18.03. Until Linux Docker distribution will supported this also, you can override the default on start by -e "DISPLAY=$YOURDISPLAYVALUE".
The default keyboard language is US (QWERTY). Unfortunatelly, it cannot be changed by any shortcut, but following command will do the trick:
docker exec $CONTAINER setxkbmap $KB
where $KB is two letter identification of keyboard language, e.g. us for US keyboard, cz for Czech keyboard.
Display font size can be adjusted using environment variable GDK_DPI_SCALE. It is set to 0.8 by default, but you can change it by passing another value on container start -e "GDK_DPI_SCALE=$YOURVALUE".
You can find more information (like Dockerfile, helper scripts and contact) at Microsnail docker apps and utils page.
Content type
Image
Digest
Size
264.5 MB
Last updated
over 4 years ago
docker pull microsnailapps/dbeaver-ce