[Evergreen-general] libdbi PostgreSQL driver not found in shared library path

Dashamir Hoxha dashohoxha at gmail.com
Sun Nov 3 14:46:19 EST 2024


On Sun, Nov 3, 2024 at 7:36 PM Blake Graham-Henderson <
blake at mobiusconsortium.org> wrote:

> Dashamir,
>
> We do have the PostgreSQL standalone setup in our install server
> documentation:
>
>
> https://evergreen-ils.org/documentation/install/README_3_14.html#creating_the_evergreen_database
>
> That command will install all of the stuff needed for a standalone
> PostgreSQL server. Keep in mind that PostreSQL 13 is the minimum version
> required for Evergreen 3.14.
>
> Let us know if you encounter a specific error, and maybe we can
> troubleshoot that. I hope you get it setup and working! We're a fun
> community of developers and librarians alike, and your suggestions and
> improvements are very much welcome!
>
> P.S. I updated our docker build repo yesterday to include that git cherry
> pick, in case you were confused to find it already there. I plan on
> removing it once the issue is resolved either in our Evergreen install
> process or by the Module::Pluggable Perl project.
>
> -Blake-
> Conducting Magic
> Will consume any data format
> MOBIUS
>
>
>
>
> On 11/3/2024 11:08 AM, Dashamir Hoxha wrote:
>
> Dear Blake, thanks a lot for sharing this detailed information.
> Whichever path I take, I will find some part of it useful. For example,
> using a cherry-pick to patch the code is something that I would have never
> been able to find by myself, and it would have been a source of frustration.
>
> I will certainly give a try to the demo docker image. However, using an
> external PostgreSQL is not that simple. I have already tried it. I have a
> PostgreSQL container that I use as an external DB for the apps that I
> install. It tried to use it as an external DB for EG, and I noticed that it
> required some additional packages or modules that I had not installed. I
> don't remember right now what they were. It is not a big deal, but it is
> something that needs to be documented and people should be told about it.
>
> I managed to find your Antora based documentation. I am a big fan of
> Antora and I use it myself for documentation purposes. My suggestion would
> be to get rid of the wiki pages and migrate all the doc pages to Antora.
> Antora can also function as a kind of wiki, if it is set up properly. For
> example I use it with GitLab pages, as described here:
> https://docker-scripts.gitlab.io/howto/working-with-docs.html
>
> Best regards,
> Dashamir
>
>
> On Sat, Nov 2, 2024 at 10:07 PM Blake Graham-Henderson <
> blake at mobiusconsortium.org> wrote:
>
>> Dashamir,
>>
>> I sympathize with you. Evergreen isn't the easiest thing to install. It's
>> a tall stack of cards starting with Linux at the bottom, then an ecosystem
>> of Perl modules, then PostgreSQL, then Ejabberd, then a thing called
>> OpenSRF, and finally Evergreen atop all of that. Then sprinkle Apache over
>> that and reverse proxy NGINX around Apache. The install steps will get you
>> there but you have to pay close attention to which user you're running each
>> command as. Some are root, some are opensrf and some are "user". Each step
>> is important.
>>
>> If you're just curious about how Evergreen operates and you want to get a
>> test server up and running, you can enable easy mode and start the
>> pre-built docker container like this:
>>
>> docker run -it -p 80:80 -p 443:443 -p 210:210 -p 6001:6001 -p 5433:5432
>> -h app.evergreen.com mobiusoffice/evergreen-ils
>>
>> Wait 7 minutes, and it's ready for you to connect.
>>
>> Yes: it supports the latest version of Evergreen. We have published a
>> container that comes with 3.14.0.
>>
>> If you're interested in the build process, and you would like to build
>> your own docker container, then you can clone the git repository that we
>> use to build the containers and play with the build. If you would like to
>> build a different version of Evergreen, you'll want to edit the vars.yml
>> file and set the version number. Some versions of Evergreen require
>> different operating systems. If you go too far back, you'll want to change
>> the operating system that is used to build the container by editing the
>> Dockerfile.
>>
>> Unfortunately, you've arrived at a moment when this bug is plaguing our
>> docker builds:
>>
>> https://bugs.launchpad.net/evergreen/+bug/2086480
>>
>> Luckily, it's easy to fix, but if you are going to build your own
>> container, you'll need to know about that issue, because your resulting
>> container will be broken without the fix. You can edit vars.yml and
>> introduce the patch like this:
>>
>> change this line:
>> Evergreen_cherry_picks: []
>>
>> to this:
>> Evergreen_cherry_picks: ['0311de0825084499642407f09e08f63a93b46e6f']
>>
>>
>> Of course, these containers aren't for production use. Mostly because the
>> PostgreSQL database is embedded. For production, you're going to need to
>> have a PostgreSQL server setup separate from your application server(s) or
>> at the very least, not in the docker container. Because of longevity and
>> backup reasons, you'll want that database to be preserved and not lost when
>> the container stops.
>>
>> Building a container that connects to an external PostgreSQL server
>> require some small tweaks to the "generic-dockerhub" build.
>>
>> These variables:
>>
>>   database_host: localhost
>>   database_database: evergreen
>>   database_port: 5432
>>   database_user: evergreen
>>   database_password: databasepassword
>>
>> will need to be changed to fit your external PostgreSQL server.
>>
>> And, you're going to need to manually edit the install_evergreen.yml
>> ansible playbook so that it doesn't* install PostgreSQL and* it doesn't
>> install the Evergreen database. This is important because If you forget to
>> delete portion of the install playbook that installs the Evergreen
>> database, it's possible that the container will delete and recreate your
>> database on your PostgreSQL server.
>>
>> All of the above is docker-specific information. I only went into such
>> detail because it seemed like you were interested in that path.
>>
>> Aside from using docker, you can install Evergreen onto a VM using other
>> methods:
>> https://wiki.evergreen-ils.org/doku.php?id=server_installation:semi_automated
>>
>> Specifically this one:
>> https://github.com/berick/evergreen-ansible-installer/tree/ubuntu-22.04
>>
>> That repository should get a bare Linux OS setup for you without much
>> fuss. Though, you'll need to switch to Ubuntu instead of Debian Bookworm,
>> because Ubuntu 22.04 is one of the assumptions of that setup.
>>
>>
>> Another thing I'd like to mention: community demo servers are available
>> here:
>>
>> https://wiki.evergreen-ils.org/doku.php?id=community_servers
>>
>>
>> Hopefully someday soon, we can make more of these things obvious from our
>> website. I understand that our wiki makes some of these important pieces of
>> information hard to find!
>>
>> And in case you didn't find our documentation, it's here:
>> https://docs.evergreen-ils.org
>>
>> -Blake-
>> Conducting Magic
>> Will consume any data format
>> MOBIUS
>>
>>
>>
>> On 11/2/2024 10:24 AM, Dashamir Hoxha wrote:
>>
>> On Sat, Nov 2, 2024 at 1:01 AM Blake Graham-Henderson via
>> Evergreen-general <evergreen-general at list.evergreen-ils.org> wrote:
>>
>>> Dashamir,
>>>
>>> Responding to your IRC comments. Have you taken a look at the docker
>>> build stuff that we have on github?
>>>
>>
>> Dear Blake, thanks for your reply. And also thanks for responding by
>> email (I prefer email communication versus IRC).
>>
>> https://github.com/mcoia/eg-docker
>>>
>>> And the docker images that are pre-built available on dockerhub:
>>>
>>> https://hub.docker.com/r/mobiusoffice/evergreen-ils
>>>
>>>
>>> This might also be of interest:
>>>
>>> https://wiki.evergreen-ils.org/doku.php?id=newdevs:testserver
>>>
>>> Feel free to copy anything from these repos and plug it into your repo.
>>>
>>
>> I didn't know about this stuff. If I knew, I could have tried to use your
>> docker images instead of trying to build mine. Does it support the latest
>> stable release of EG (have you tried it)?
>>
>> Anyway, I had a quick look at the GitHub repo, and it is difficult for me
>> to figure out from it what is wrong in my installation. It is basically
>> bash code, embedded into ansible yaml code, executed inside a docker
>> container (3 levels of complexity). I also have to admit that I am not
>> quite familiar with ansible.
>>
>> In any case, the installation instructions of EG (long and complex as
>> they are) are easier for me to understand.
>> So, if I follow them but I am still not able to make it work, it means
>> that:
>> - they are not as clear and precise and they should be
>> - there is some issue (maybe very small) with the latest stable release
>> (I have not tried the previous releases)
>> - I am missing something or I am doing something wrong
>>
>> If someone could help me (in an online meeting, in an interactive
>> session) to debug my installation and figure out what I am doing wrong,
>> this would be the easiest thing for me.
>>
>> Anyway, for the time being I am looking at Koha, which seems to be easier
>> to install and has less instructions. If I fail, I will look maybe at some
>> thind option (I don't know yet what this might be), or come back and
>> give another try to EG.
>>
>> In any case, thanks for your help.
>>
>> Sincerely,
>> Dashamir
>>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.evergreen-ils.org/pipermail/evergreen-general/attachments/20241103/8f14c501/attachment-0001.htm>


More information about the Evergreen-general mailing list