DBMaker is the ultimate SQL DBMS - easy to use, low cost and feature rich.
10K+
DBMaker - an easy-to-use, low-cost, feature-rich SQL DBMS built around a tightly integrated, advanced database engine. DBMaker brings cost-effective scalability and reliability to independent software vendors (ISVs) and developers looking to improve functionality and database performance. DBMaker provides a multitude of robust features that enhance the power, performance and flexibility of any application. With a native ODBC interface, multimedia capabilities, large database features and cross-platform support, DBMaker integrates multimedia and traditional database functions in one affordable, easy-to-use package.
DBMaker is a perfect match for developers looking to build fast, compact applications. High-speed performance is ensured with fully integrated native ODBC API, multimedia handling and efficient data access routines. DBMaker’s powerful high performance internal database engine, is responsible for generating and storing a multitude of complex data types. The engine is designed to provide exceptional efficiency for accessing relational data. A powerful query optimizer combined with multiple indexing methods results in faster searches and more efficient storage.
The DBMaker Docker Image contains the DBMaker Database Server 5.4.3 Bundle Edition running on Debian stable-slim. When the container is started without any settings, the container will create a 'TEST' database. When the container starting, you can pass db related settings through environment variables or command line to determine whether to create a new database or start an existing database. You can refer ' readm.md ' in the DBMaker Docker Image.
For more information and related downloads for DBMaker Server, please visit www.dbmaker.com.

Get image from docker.io which based on DBMaker 5.4.3 Bundle + Debian:stable-slim
docker pull dbmaker/bundle
Start container (DBMaker docker image)
The priority is -d > -i > DMCONFIG_CS when setting conflicting
A. Without any setting
docker run -d --name dbsvr dbmaker/bundle
Note:
The default setting is DATABASE=TEST;DB_DBDIR=/data;DB_PTNUM=2453
B. With setting DMCONFIG_CS environment variable
docker run -d --rm --name dbsvr -eDMCONFIG_CS="DATABASE=MYDB" dbmaker/bundle
C. Command line parameters -i
docker run -d --rm --name dbsvr dbmaker/bundle \
-i "DATABASE=MYDB;DB_DBDIR=/data" \
-i "DB_PTNUM=2453"
D. Command line parameters "-d"
docker run -d --rm --name dbsvr dbmaker/bundle \
-d mydb
Keep some DB files always in external location
A. DB files (include dmconfig.ini) in external location (for exa: /opt/myproj/data)
docker run -d --rm --name dbsvr -v/opt/myproj/data:/data dbmaker/bundle \
-i "DATABASE=MYDB;DB_DBDIR=/data;DB_PTNUM=2453"
Note:
If /opt/myproj/data/MYDB.SDB not exist, new DB will be created.
B. activation.dat in external location
docker run -d --rm --name dbsvr \
-v /opt/myproj/data:/data \
-v /opt/myproj/data/activation.dat:/opt/bundle/activation.dat \
dbmaker/bundle \
-d MYDB -i "DB_PTNUM=2453"
Runtime setting dmconfig.ini and restart DB
A. edit dmconfig.ini which on external location
$ vi /opt/myproj/data/dmconfig.ini
$ docker exec dbsvr sv restart dbmaker
B. by dmset
docker exec dbsvr dmset -d mydb -i "DB_JNLSZ=100M;DB_SMODE=2" sv restart dbmaker
control service via sv in container
sv start dbmaker
sv stop dbmaker
sv restart dbmaker
sv status dbmaker
sv check dbmaker
Start DB via docker-compose
docker-compose up -d
-------docker-compose.yml--------
# for dbmaker/bundle
version: "3"
services:
db:
image: dbmaker/bundle
container_name: dbsvr
working_dir: /data
restart: always
logging:
options:
max-size: 10m
environment:
DMCONFIG_CS: "DATABASE=MYDB"
volumes:
- /opt/myproj/data:/data
- /opt/bundle/activation.dat:/opt/bundle/activation.dat
ports:
- 2453:2453
# app:
# image: xxxxx
# environment:
# DMCONFIG_CS: "DATABASE=MYDB;DB_SVADR=db;DB_PTNUM=2453"
Test connection
A. test in container
docker exec -it dbsvr dmsqlc
dmsqlc> connect to mydb sysadm;
USE db #1 connected to db:<mydb> by user:<SYSADM>
B. test in client side
dmSQL> connect to mydb sysadm;
------client dmconfig.ini------------
[MYDB]
DB_PtNum=2453
DB_SvAdr=192.168.0.10
DB_UsrID=SYSADM
Content type
Image
Digest
sha256:dfcc0dcb7…
Size
74.2 MB
Last updated
3 months ago
docker pull dbmaker/bundle