<div dir="ltr"><div class="gmail_default" style="font-family:arial,sans-serif;font-size:small"><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Nov 3, 2024 at 7:36 PM Blake Graham-Henderson <<a href="mailto:blake@mobiusconsortium.org">blake@mobiusconsortium.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><u></u>
<div>
Dashamir,<br>
<br>
We do have the PostgreSQL standalone setup in our install server
documentation:<br>
<br>
<a href="https://evergreen-ils.org/documentation/install/README_3_14.html#creating_the_evergreen_database" target="_blank">https://evergreen-ils.org/documentation/install/README_3_14.html#creating_the_evergreen_database</a><br>
<br>
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.<br>
<br>
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!<br>
<br>
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.<br>
<pre cols="72">-Blake-
Conducting Magic
Will consume any data format
MOBIUS
</pre>
<br>
<br>
<div>On 11/3/2024 11:08 AM, Dashamir Hoxha
wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small">Dear
Blake, thanks a lot for sharing this detailed information.</div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small">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.</div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small"><br>
</div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small">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.</div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small"><br>
</div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small">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: <a href="https://docker-scripts.gitlab.io/howto/working-with-docs.html" target="_blank">https://docker-scripts.gitlab.io/howto/working-with-docs.html</a></div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small"><br>
</div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small">Best
regards,</div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small">Dashamir</div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small"><br>
</div>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Sat, Nov 2, 2024 at
10:07 PM Blake Graham-Henderson <<a href="mailto:blake@mobiusconsortium.org" target="_blank">blake@mobiusconsortium.org</a>>
wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div> Dashamir,<br>
<br>
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.<br>
<br>
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:<br>
<br>
docker run -it -p 80:80 -p 443:443 -p 210:210 -p 6001:6001
-p 5433:5432 -h <a href="http://app.evergreen.com" target="_blank">app.evergreen.com</a>
mobiusoffice/evergreen-ils<br>
<br>
Wait 7 minutes, and it's ready for you to connect.<br>
<br>
Yes: it supports the latest version of Evergreen. We have
published a container that comes with 3.14.0.<br>
<br>
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.<br>
<br>
Unfortunately, you've arrived at a moment when this bug is
plaguing our docker builds:<br>
<br>
<a href="https://bugs.launchpad.net/evergreen/+bug/2086480" target="_blank">https://bugs.launchpad.net/evergreen/+bug/2086480</a><br>
<br>
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:<br>
<br>
change this line:<br>
Evergreen_cherry_picks: []<br>
<br>
to this:<br>
Evergreen_cherry_picks:
['0311de0825084499642407f09e08f63a93b46e6f']<br>
<br>
<br>
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.<br>
<br>
Building a container that connects to an external PostgreSQL
server require some small tweaks to the "generic-dockerhub"
build.<br>
<br>
These variables:<br>
<br>
database_host: localhost<br>
database_database: evergreen<br>
database_port: 5432<br>
database_user: evergreen<br>
database_password: databasepassword<br>
<br>
will need to be changed to fit your external PostgreSQL
server.<br>
<br>
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.<br>
<br>
All of the above is docker-specific information. I only went
into such detail because it seemed like you were interested
in that path.<br>
<br>
Aside from using docker, you can install Evergreen onto a VM
using other methods: <a href="https://wiki.evergreen-ils.org/doku.php?id=server_installation:semi_automated" target="_blank">https://wiki.evergreen-ils.org/doku.php?id=server_installation:semi_automated</a>
<br>
<br>
Specifically this one: <a href="https://github.com/berick/evergreen-ansible-installer/tree/ubuntu-22.04" target="_blank">https://github.com/berick/evergreen-ansible-installer/tree/ubuntu-22.04</a><br>
<br>
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.<br>
<br>
<br>
Another thing I'd like to mention: community demo servers
are available here:<br>
<br>
<a href="https://wiki.evergreen-ils.org/doku.php?id=community_servers" target="_blank">https://wiki.evergreen-ils.org/doku.php?id=community_servers</a><br>
<br>
<br>
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!<br>
<br>
And in case you didn't find our documentation, it's here: <a href="https://docs.evergreen-ils.org" target="_blank">https://docs.evergreen-ils.org</a><br>
<br>
<pre cols="72">-Blake-
Conducting Magic
Will consume any data format
MOBIUS</pre>
<br>
<br>
<div>On 11/2/2024 10:24 AM, Dashamir Hoxha wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">
<div dir="ltr">
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small"><span style="font-family:Arial,Helvetica,sans-serif">On
Sat, Nov 2, 2024 at 1:01 AM Blake Graham-Henderson
via Evergreen-general <<a href="mailto:evergreen-general@list.evergreen-ils.org" target="_blank">evergreen-general@list.evergreen-ils.org</a>>
wrote:</span></div>
</div>
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div> Dashamir,<br>
<br>
Responding to your IRC comments. Have you taken a
look at the docker build stuff that we have on
github?<br>
</div>
</blockquote>
<div><br>
</div>
<div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small">Dear Blake, thanks
for your reply. And also thanks for responding by
email (I prefer email communication versus IRC).</div>
</div>
<div><br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div> <a href="https://github.com/mcoia/eg-docker" target="_blank">https://github.com/mcoia/eg-docker</a><br>
<br>
And the docker images that are pre-built available
on dockerhub:<br>
<br>
<a href="https://hub.docker.com/r/mobiusoffice/evergreen-ils" target="_blank">https://hub.docker.com/r/mobiusoffice/evergreen-ils</a><br>
<br>
<br>
This might also be of interest:<br>
<br>
<a href="https://wiki.evergreen-ils.org/doku.php?id=newdevs:testserver" target="_blank">https://wiki.evergreen-ils.org/doku.php?id=newdevs:testserver</a><br>
<br>
Feel free to copy anything from these repos and
plug it into your repo.<br>
</div>
</blockquote>
<div><br>
</div>
<div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small">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)?</div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small"><br>
</div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small">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.</div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small"><br>
</div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small">In any case, the
installation instructions of EG (long and complex
as they are) are easier for me to understand.</div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small">So, if I follow
them but I am still not able to make it work, it
means that:</div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small">- they are not as
clear and precise and they should be</div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small">- there is some
issue (maybe very small) with the latest stable
release (I have not tried the previous releases)</div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small">- I am missing
something or I am doing something wrong</div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small"><br>
</div>
</div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small">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.</div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small"><br>
</div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small">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.</div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small"><br>
</div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small">In
any case, thanks for your help.</div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small"><br>
</div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small">Sincerely,</div>
<div class="gmail_default" style="font-family:arial,sans-serif;font-size:small">Dashamir</div>
</div>
</div>
</blockquote>
<br>
</div>
</blockquote>
</div>
</blockquote>
<br>
</div>
</blockquote></div>