[Koha-devel] Dockerized Koha

David Cook dcook at prosentient.com.au
Thu Jun 22 02:59:55 CEST 2023


By the way, I’ve raised bug 34088 to fix the slowness of the database upgrade checks. I’ve got a workable patch there, and I’ll look at polishing it up when I have a bit more free time.

 

With the database upgrade check time fixed, I think we could do an “check_for_updates.sh” script in the Docker container entry point script. 

 

David Cook

Senior Software Engineer

Prosentient Systems

Suite 7.03

6a Glen St

Milsons Point NSW 2061

Australia

 

Office: 02 9212 0899

Online: 02 8005 0595

 

From: Koha-devel <koha-devel-bounces at lists.koha-community.org> On Behalf Of David Cook
Sent: Thursday, June 22, 2023 10:09 AM
To: koha-devel at lists.koha-community.org
Subject: Re: [Koha-devel] Dockerized Koha

 

Personally, I don’t need it at the moment, although I briefly thought I might for one library. 

 

Sometimes I wonder about design…

 

1.	Would it be 1 Koha instance per container, or would it be a multi-tenant Koha in 1 container? 
2.	*How would upgrades be handled?*

a.	At the moment, when you install a new package, post-install hooks upgrade the database and change some configuration files. But that wouldn’t work if you install the package when making a new Docker image. Those hooks wouldn’t be invoked on the production system when you launch a new container from the new image. 

                                                               i.      The solution there might be to make a new script for performing upgrades, and for backwards compatibility it would still be called by the DEB post-install hooks, and the Docker entrypoint.sh could call it at startup time.

1.	Although if it were called at startup time, that could make startup unnecessarily slow, since the database upgrade check is very slow even when it has no work to do. (I have been meaning to fix that…)

2.	How would configuration files be persisted?

a.	If you have 1 Koha instance per container, you could just mount individual files, but there are a lot of configuration files, so that might get burdensome.
b.	If you have multi-tenant Koha, maybe you could mount the entirety of /etc/koha/sites. That would probably work well. 

                                                               i.      I don’t think you could mount /etc/koha because a lot of those files are generated by the koha-common package at install time, so you’d want to pick them up from the Docker image.

4.	How would other files be persisted?

a.	Mount to /var/lib/koha, /var/spool/koha, /var/log/koha(?)

 

Anything else I’ve missed?

 

David Cook

Senior Software Engineer

Prosentient Systems

Suite 7.03

6a Glen St

Milsons Point NSW 2061

Australia

 

Office: 02 9212 0899

Online: 02 8005 0595

 

From: Koha-devel <koha-devel-bounces at lists.koha-community.org <mailto:koha-devel-bounces at lists.koha-community.org> > On Behalf Of Tomas Cohen Arazi
Sent: Thursday, June 22, 2023 3:48 AM
To: koha-devel at lists.koha-community.org <mailto:koha-devel at lists.koha-community.org> 
Subject: Re: [Koha-devel] Dockerized Koha

 

Hi all. We actually *have* a Docker image building pipeline [1]. If someone wants to join the effort of publishing an official docker image, please put it in the Roadmap wiki. That reminds me I didn't send the email about the roadmap last week. Doing it right now.

 

Best regards.

 

[1]  https://gitlab.com/koha-community/docker/koha-docker

 

El mié, 21 jun 2023 a las 4:12, Thomas Klausner (<domm at plix.at <mailto:domm at plix.at> >) escribió:

Hi!

On Wed, Jun 21, 2023 at 11:05:56AM +1000, David Cook wrote:

> Do we have any appetite for starting to create a production-ready Dockerized
> Koha? 

++

And while I have a lot of experience with deploying Perl apps using 
containers like Docker or Podman, I did not manage to get a (usable) 
Dockerfile / docker-compose for Koha running (in a reasonable amount of 
time; and then discovered koha-testing-docker for localdev..)

But I could definitely again try to spend some time on this!

Greetings,
domm


-- 
#!/usr/bin/perl                             https://domm.plix.at
for(ref bless{},just'another'perl'hacker){s-:+-$"-g&&print$_.$/}
_______________________________________________
Koha-devel mailing list
Koha-devel at lists.koha-community.org <mailto:Koha-devel at lists.koha-community.org> 
https://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel
website : https://www.koha-community.org/
git : https://git.koha-community.org/
bugs : https://bugs.koha-community.org/




 

-- 

Tomás Cohen Arazi

Theke Solutions (https://theke.io)
✆ +54 9351 3513384
GPG: B2F3C15F

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.koha-community.org/pipermail/koha-devel/attachments/20230622/1c5389a1/attachment.htm>


More information about the Koha-devel mailing list