DreamFactory Utility Module: Could not find driver for Firebird 3

On Ubuntu server, I created a Firebird installation by using the jacobalberty/firebird:latest image (version 3.0.7). From Windows, using IBExpert, I created a database on the Linux server and restored a backup.
I then use Dreamfactory in web browser, installed from bitnami/dreamfactory:latest image (version 4), to create a REST API by configuring a service for the populated database but when I select a the Firebird database as a DB Service I get the error message: “could not find driver”

Hi @NolsSmit,

Can you please highlight the steps you have taken to install the Firebird driver? Were the steps you followed the ones highlighted in our Getting Started Guide?

Hi Kevin,

Ok, I now did follow the steps in Getting Started Guide.

I also edited /etc/php/7.4/cli/php.ini to:

..
..
;extension=odbc
;extension=openssl
extension=pdo_firebird
;extension=pdo_mysql
;extension=pdo_oci
...
...

On the command: $ php -m
I notice the following list of modules

[PHP Modules]
calendar
Core
ctype
date
dom
exif
FFI
fileinfo
filter
ftp
gettext
hash
iconv
json
libxml
openssl
pcntl
pcre
PDO
Phar
posix
readline
Reflection
session
shmop
SimpleXML
sockets
sodium
SPL
standard
sysvmsg
sysvsem
sysvshm
tokenizer
xml
xmlreader
xmlwriter
xsl
Zend OPcache
zlib

[Zend Modules]
Zend OPcache

I don’t recognize one Firebird related and I still get the same error: “Could not find driver” in DreamFactory Utility Mode

To mention: I’m running Dreamfactory in a docker container.

My docker-compose.yml file:

version: '2'

services:

  mariadb:
    restart: unless-stopped
    container_name: mariadb
    image: bitnami/mariadb:latest
    volumes:
      - ./mariadb_data:/bitnami/mariadb
    environment:
      - ALLOW_EMPTY_PASSWORD=yes
    networks:
      - dreamfactory-tier


  mongodb:
    restart: unless-stopped
    container_name: mongodb
    image: 'bitnami/mongodb:latest'
    volumes:
      - ./mongodb_data:/bitnami/mongodb
    networks:
      - dreamfactory-tier


  redis:
    restart: unless-stopped
    container_name: redis
    image: 'bitnami/redis:latest'
    environment:
      - ALLOW_EMPTY_PASSWORD=yes
    volumes:
      - ./redis_data:/bitnami/redis
    networks:
      - dreamfactory-tier

# https://hub.docker.com/r/bitnami/dreamfactory/
  dreamfactory:
    restart: unless-stopped
    container_name: dreamfactory
    image: bitnami/dreamfactory:latest
    environment:
      - SMTP_HOST=smtp.gmail.com
      - SMTP_PORT=587
      - SMTP_USER=nols.smit@gmail.com
      - SMTP_PASSWORD=xxxxxxxxxxxxxxx
      - SMTP_PROTOCOL=tls
      - DREAMFACTORY_DATABASE_TYPE=mariadb
      - DREAMFACTORY_ENABLE_MARIADB_DATABASE=yes
    ports:
      - '80:80'     
      - '443:443'  
    volumes:
      - ./dreamfactory_data:/bitnami
    networks:
      - dreamfactory-tier
    depends_on:
      - mariadb
      - mongodb
      - redis


# https://hub.docker.com/r/jacobalberty/firebird/
  firebird:
    restart: unless-stopped
    container_name: firebird
    image: jacobalberty/firebird:latest
    environment:
      - TZ="Africa/Johannesburg"
      - tmpfs=/data:rw
      - ISC_PASSWORD=xxxxxxxxxxxxxxxx
    ports:
      - 3050:3050
    volumes:
      - ./firebird_data:/firebird
    networks:
      - dreamfactory-tier
      - app-tier

# See: https://github.com/bitnami/bitnami-docker-apache#how-to-use-this-image
  apache:
    restart: unless-stopped
    container_name: apache
    image: bitnami/apache:latest
    environment:
      - APACHE_HTTP_PORT_NUMBER=8080
      - APACHE_HTTPS_PORT_NUMBER=8443
    ports:
      - 8080:8080
      - 8443:8443
    volumes:
      - ./apache_data:/app
      - .my_vhost.conf:/vhosts/my_vhost.conf:ro


  postgres:
    restart: unless-stopped
    container_name: postgres
    image: bitnami/postgresql:latest
    environment:
      - TZ="Africa/Johannesburg"
      - POSTGRES_DATABASE=sdb_risk
      - POSTGRES_USER=postgres
      - POSTGRES_PASSWORD=xxxxxxxxxxxxxxxx
    ports:
      - 5432:5432
      - 5433:5433
    volumes:
      - ./postgres_data:/bitnami/postgresql
    networks:
      - dreamfactory-tier
      - app-tier


networks:
  dreamfactory-tier:
  app-tier:
    driver: bridge
volumes:
  mariadb_data:
    driver: local
  mongodb_data:
    driver: local
  redis_data:
    driver: local
  dreamfactory_data:
    driver: local
  firebird_data:
    driver: local
  postgres_data:
    driver: local 

Regards,

Nols Smit