-
Notifications
You must be signed in to change notification settings - Fork 481
Do not install extra extensions by default #187
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Per discussion in gitter.im with @phillipross , the approach should be:
|
This implementation for phasing out the pre-installation of extensions laid out by @nyurik looks fine to me. I'd like to add a few points here that I touched upon in the gitter discussion. One thing that I think is very important is avoiding changes that would break consumers of this image who've been using it for a very long time. Changes in behavior could be very burdensome for some folks who have infrastructure that incorporates these images. Pulling the rug out from under them suddenly after several years of seamless operation would probably not be garnering too much confidence or goodwill. The scheme that @nyurik has proposed appears to try to minimize this. Another point is that there's an inherent cost/benefit balance that we're always faced with: the balance of adding functionality or making optimizations versus extra maintenance overhead. On the surface, @nyurik's scheme doesn't appear to add too much extra ongoing maintenance. The next point is the balance between optimization and facility. Not automatically installing extensions and having extra objects is a nice optimization, but the flip side of this is having almost everything you need ready for use as soon as you start a container without extra steps. Specifically, I think of the portion of the community that do a lot of presentations, training, etc which help students and new users get onboard and begin learning. They benefit immensely when there are ready-to-go "batteries included" container images with as few steps as possible to getting something up and running. Many container images maintain "slim" variants which act as barebones minimal images, and then more standard images which install/configure more things that are commonly used by the image consumers. I think @nyurik's proposal is a decent middle-ground that avoids the extra maintenance of an image variant, while also providing an easy way to continue having a low-barrier way to get a a container up and running with commonly used extensions already installed. The somewhat long-winded points I've brought up here are actually broader than just this specific proposal. I'd like to see input from others regarding anything that I've mentioned thus far. |
TLDR: We need a Roadmap & I prefer a full list of wanted extensions ..
IMHO/Details: We need a
(Roadmap)Proposal ( based on my experience) :
my (syntax) taste:
draft - not perfect - example:
example:
|
@nyurik : so you can add your customised file with as a simple volume file:
in you case probably similar code:
|
Ideally there would be an env var controllable option to not do any template database or extention installation at all (basially surrounding all of |
Hey there. I'd love to use the community-supported version of Postgis, but the installation of extra extensions is somewhat of overhead for the project I'm currently working on. I'd suggest a similar approach to what kartoza/postgis does. An environment variable The default could be to install all, so it wouldn't break current usages of the image. |
Apologies, I asked about this in a new thread before finding this discussion. I'm particularly interested in being able to easily add postgres_fdw & ogr_fdw to a Docker Postgis database. While there is some discussion above, there doesn't seem to be any resolution. Is there any progress with supporting more extensions in the image (but not necessarily automatically in actual databases - leave that to the end user, as per Postrgres standard practice)? Thanks, |
@ImreSamu hi, can we revisit this issue? It seems to have gained a lot of traction with the community (lots of 👍 and links from other projects and dups). I recently tried to use it with the Martin project, and Martin automatically "discovered" all the Thanks for all the hard work maintaining this image! |
controlling extension default is certainly a must have configuration. |
New containers automatically get database with
CREATE EXTENSION ...
executed for all postgis related extensions. This results in the creation of numeroustiger
-related tables, and possibly other unneeded cruft.I would like to propose that postgis image by default should not run any
CREATE EXTENSION
statements, with the possible exception of thepostgis
extension itself -- after all we can safely assume that if a user picked postgis docker, they need it.The extra extensions should still be packaged with the image to make their installation simpler.
The text was updated successfully, but these errors were encountered: