Docker - Update Postgres Driver To 9.6

I’m using the Lucee5-nginx docker image and finding that it has support for an older version of postgres, but seems not to work with 9.6.

I found what I believe to the the answer to this problem in the Lucee support topic

https://lucee.daemonite.io/t/heads-up-postgresql-users/1990

But it looks like Docker’s setup of Lucee has the admin pages locked down and I can’t find any path to the OSGi bundles directory mentioned by the “lgal” user’s post in the mentioned thread.

How can I update the version of the driver in Docker? Also, how can I expose information that can be found in the admin pages to confirm stuff?

You might find this quick overview useful – it talks briefly about how you can bypass the default admin security.

If you have a specific extension that you need to install as part of your Dockerfile you might find this memcached example insightful.

I saw that guide awhile back which led me to the config file that I thought I had modified adequately, but apparently the allow of an IP address or a range actually doesn’t grant access as I had thought. Disabling all these as you have in the linked guide is what granted access. I don’t know why that is, but I was getting error 404 instead of 403 which means it was having an impact.

This is the settings I had that were failing, the last section being the problem child:

  #block/ignore requests for Application.cfc/cfm
#  location ~* Application.cf[mc]$ {
#    return 404;
#  }

  #block/ignore requests for /lucee-server
#  location ~* /lucee-server {
#    return 404;
#  }

  #block/ignore CFIDE requests
#  location ~* /CFIDE {
#    return 404;
#  }

#  location ~* /*.cfc$ {
#    return 403;
#  }

  location ~* /lucee/ {
    # allow 10.0.0.1; # Add your IP address here
    allow 10.10.8.55;  #Added by "me" 20180526
    deny all;
  }

I found the bundles directory located under /lucee-server/bundles and dropped in the newer version of the postresql jar file for the driver and gave that a go. I still got the same error I had so I figured this must be a me problem and indeed it turned out it was. After trying to connect to the remote database with Python it was giving the exact same error confirming something else was wrong. Turns out I didn’t create the table under the correct database.

Its been about 6 years since I’ve worked with CFML and haven’t connected anything to postgresql before so this definitely was a workout!