fieat: sube versión de Koha
This commit is contained in:
13
.env
13
.env
@@ -1,13 +0,0 @@
|
|||||||
# Versiones
|
|
||||||
KOHA_VERSION=24.11
|
|
||||||
MARIADB_VERSION=11
|
|
||||||
|
|
||||||
# Puertos
|
|
||||||
KOHA_INTRANET_PORT=8080
|
|
||||||
KOHA_OPAC_PORT=8081
|
|
||||||
|
|
||||||
# Base de datos
|
|
||||||
MARIADB_DATABASE=koha_teolib
|
|
||||||
MARIADB_USER=koha_teolib
|
|
||||||
MARIADB_PASSWORD=cambia_esta_contraseña
|
|
||||||
MARIADB_ROOT_PASSWORD=cambia_esta_contraseña_root
|
|
||||||
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
.env
|
||||||
@@ -1,6 +1,7 @@
|
|||||||
services:
|
services:
|
||||||
koha:
|
koha:
|
||||||
image: teogramm/koha:${KOHA_VERSION:-24.11}
|
build:
|
||||||
|
context: ./koha
|
||||||
ports:
|
ports:
|
||||||
- "${KOHA_INTRANET_PORT:-8080}:8080"
|
- "${KOHA_INTRANET_PORT:-8080}:8080"
|
||||||
- "${KOHA_OPAC_PORT:-8081}:8081"
|
- "${KOHA_OPAC_PORT:-8081}:8081"
|
||||||
|
|||||||
59
koha/Dockerfile
Normal file
59
koha/Dockerfile
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
FROM debian:bookworm
|
||||||
|
|
||||||
|
ENV DEBIAN_FRONTEND=noninteractive
|
||||||
|
ARG S6_OVERLAY_VERSION=3.2.0.2
|
||||||
|
ARG KOHA_VERSION=26.05
|
||||||
|
ARG TARGETARCH
|
||||||
|
|
||||||
|
LABEL org.opencontainers.image.source=https://github.com/teorgamm/koha-docker
|
||||||
|
|
||||||
|
RUN apt-get update \
|
||||||
|
&& apt-get install -y \
|
||||||
|
wget \
|
||||||
|
apache2 \
|
||||||
|
gnupg2 \
|
||||||
|
apt-transport-https \
|
||||||
|
xz-utils \
|
||||||
|
&& rm -rf /var/cache/apt/archives/* \
|
||||||
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
ADD https://github.com/just-containers/s6-overlay/releases/download/v${S6_OVERLAY_VERSION}/s6-overlay-noarch.tar.xz /tmp
|
||||||
|
RUN tar -C / -Jxpf /tmp/s6-overlay-noarch.tar.xz
|
||||||
|
|
||||||
|
RUN echo ${TARGETARCH} && case ${TARGETARCH} in \
|
||||||
|
"amd64") S6_ARCH=x86_64 ;; \
|
||||||
|
"arm64") S6_ARCH=aarch64 ;; \
|
||||||
|
"arm") S6_ARCH=armhf ;; \
|
||||||
|
esac \
|
||||||
|
&& wget -P /tmp/ -q https://github.com/just-containers/s6-overlay/releases/download/v${S6_OVERLAY_VERSION}/s6-overlay-${S6_ARCH}.tar.xz \
|
||||||
|
&& tar -C / -Jxpf /tmp/s6-overlay-${S6_ARCH}.tar.xz
|
||||||
|
|
||||||
|
RUN mkdir -p /etc/apt/keyrings/ && \
|
||||||
|
wget -qO - https://debian.koha-community.org/koha/gpg.asc | gpg --dearmor -o /etc/apt/keyrings/koha.gpg && \
|
||||||
|
echo "deb [signed-by=/etc/apt/keyrings/koha.gpg] https://debian.koha-community.org/koha ${KOHA_VERSION} main bullseye" | tee /etc/apt/sources.list.d/koha.list
|
||||||
|
|
||||||
|
# Install Koha
|
||||||
|
RUN apt-get update \
|
||||||
|
&& apt-get install -y koha-core \
|
||||||
|
idzebra-2.0 \
|
||||||
|
apache2 libapache2-mpm-itk\
|
||||||
|
logrotate \
|
||||||
|
&& rm -rf /var/cache/apt/archives/* \
|
||||||
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
RUN a2enmod rewrite \
|
||||||
|
&& a2enmod headers \
|
||||||
|
&& a2enmod proxy_http \
|
||||||
|
&& a2enmod cgi \
|
||||||
|
&& a2dissite 000-default \
|
||||||
|
&& echo "Listen 8081\nListen 8080" > /etc/apache2/ports.conf \
|
||||||
|
&& sed -E -i "s#^(export APACHE_LOG_DIR=).*#\1/var/log/koha/apache#g" /etc/apache2/envvars \
|
||||||
|
&& mkdir -p /var/log/koha/apache \
|
||||||
|
&& chown -R www-data:www-data /var/log/koha/apache
|
||||||
|
|
||||||
|
COPY --chown=0:0 files/ /
|
||||||
|
WORKDIR /docker
|
||||||
|
|
||||||
|
EXPOSE 2100 6001 8080 8081
|
||||||
|
|
||||||
|
CMD [ "/init" ]
|
||||||
60
koha/files/docker/templates/SIPconfig.xml
Normal file
60
koha/files/docker/templates/SIPconfig.xml
Normal file
@@ -0,0 +1,60 @@
|
|||||||
|
<acsconfig xmlns="http://openncip.org/acs-config/1.0/">
|
||||||
|
<!-- above address gets nothing, it's just a namespace -->
|
||||||
|
<error-detect enabled="true" />
|
||||||
|
|
||||||
|
<!--
|
||||||
|
Set Net::Server::PreFork runtime parameters
|
||||||
|
syslog_ident will identify SIP2 Koha server entries in syslog
|
||||||
|
For OpenSolaris, add: syslog_logsock=stream
|
||||||
|
-->
|
||||||
|
<server-params
|
||||||
|
min_servers='1'
|
||||||
|
min_spare_servers='0'
|
||||||
|
log_file='Sys::Syslog'
|
||||||
|
syslog_ident='koha_sip'
|
||||||
|
syslog_facility='local6'
|
||||||
|
/>
|
||||||
|
|
||||||
|
<listeners>
|
||||||
|
<!-- vestigial HTTP, never implemented: just use the OPAC!
|
||||||
|
<service
|
||||||
|
port="0:8080/tcp"
|
||||||
|
transport="http"
|
||||||
|
protocol="NCIP/1.0" />
|
||||||
|
-->
|
||||||
|
<service
|
||||||
|
port="8023/tcp"
|
||||||
|
transport="telnet"
|
||||||
|
protocol="SIP/2.00"
|
||||||
|
timeout="60" />
|
||||||
|
|
||||||
|
<service
|
||||||
|
port="127.0.0.1:6001/tcp"
|
||||||
|
transport="RAW"
|
||||||
|
protocol="SIP/2.00"
|
||||||
|
client_timeout="600"
|
||||||
|
timeout="60" />
|
||||||
|
<!--- client_timeout times out active connections which have not received
|
||||||
|
input from the client. Many persistent connections will send a status request
|
||||||
|
every 5-7 mins so setting this to less than that will add instability to the connection
|
||||||
|
if explicitly set to zero, no timeout is applied to the connection.
|
||||||
|
NB the parameter timeout applies to the login process only and should be set to a lower value
|
||||||
|
to time out failed connections
|
||||||
|
-->
|
||||||
|
</listeners>
|
||||||
|
|
||||||
|
<accounts>
|
||||||
|
${SIP_CONF_ACCOUNTS}
|
||||||
|
</accounts>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
Institution tags are for enabled branches. There needs to be one
|
||||||
|
institution stanza for each institution named in the accounts above.
|
||||||
|
The implementation attribute is actually used to find the code to run,
|
||||||
|
in our case "ILS".
|
||||||
|
-->
|
||||||
|
|
||||||
|
<institutions>
|
||||||
|
${SIP_CONF_LIBS}
|
||||||
|
</institutions>
|
||||||
|
</acsconfig>
|
||||||
4
koha/files/docker/templates/koha-common.cnf
Normal file
4
koha/files/docker/templates/koha-common.cnf
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
[client]
|
||||||
|
host = ${MYSQL_SERVER}
|
||||||
|
user = root
|
||||||
|
password = ${MYSQL_PASSWORD}
|
||||||
61
koha/files/docker/templates/koha-sites.conf
Normal file
61
koha/files/docker/templates/koha-sites.conf
Normal file
@@ -0,0 +1,61 @@
|
|||||||
|
# NOTE: for a complete list of valid options please read koha-create(8)
|
||||||
|
|
||||||
|
## Apache virtual hosts creation variables
|
||||||
|
#
|
||||||
|
# Please note that the URLs are built like this:
|
||||||
|
# OPAC: http://<OPACPREFIX><INSTANCE NAME><OPACSUFFIX><DOMAIN>:<OPACPORT>
|
||||||
|
# STAFF: http://<INTRAPREFIX><INSTANCE NAME><INTRASUFFIX><DOMAIN>:<INTRAPORT>
|
||||||
|
DOMAIN="${KOHA_DOMAIN}"
|
||||||
|
INTRAPORT="${KOHA_INTRANET_PORT}"
|
||||||
|
INTRAPREFIX="${KOHA_INTRANET_PREFIX}"
|
||||||
|
INTRASUFFIX="${KOHA_INTRANET_SUFFIX}"
|
||||||
|
OPACPORT="${KOHA_OPAC_PORT}"
|
||||||
|
OPACPREFIX="${KOHA_OPAC_PREFIX}"
|
||||||
|
OPACSUFFIX="${KOHA_OPAC_SUFFIX}"
|
||||||
|
|
||||||
|
## Default data to be loaded
|
||||||
|
#
|
||||||
|
# DEFAULTSQL: filename
|
||||||
|
# Specify an SQL file with default data to load during instance creation
|
||||||
|
# default: (empty)
|
||||||
|
DEFAULTSQL=""
|
||||||
|
|
||||||
|
## Zebra global configuration variables
|
||||||
|
#
|
||||||
|
# ZEBRA_MARC_FORMAT: 'marc21' | 'normarc' | 'unimarc'
|
||||||
|
# Specifies the MARC records format for indexing
|
||||||
|
# default: 'marc21'
|
||||||
|
ZEBRA_MARC_FORMAT="${ZEBRA_MARC_FORMAT}"
|
||||||
|
|
||||||
|
# ZEBRA_LANGUAGE: 'cs' | 'en' | 'es' | 'fr' | 'nb' | 'ru' | 'uk'
|
||||||
|
# Primary language for Zebra indexing
|
||||||
|
# default: 'en'
|
||||||
|
ZEBRA_LANGUAGE="${ZEBRA_LANGUAGE}"
|
||||||
|
|
||||||
|
# BIBLIOS_INDEXING_MODE: 'dom' | 'grs1'
|
||||||
|
# Indexing mode for bibliographic records
|
||||||
|
# default: 'dom'
|
||||||
|
BIBLIOS_INDEXING_MODE="${BIBLIOS_INDEXING_MODE}"
|
||||||
|
|
||||||
|
# AUTHORITIES_INDEXING_MODE: 'dom' | 'grs1'
|
||||||
|
# Indexing mode for authority records
|
||||||
|
# default: 'dom'
|
||||||
|
AUTHORITIES_INDEXING_MODE="${AUTHORITIES_INDEXING_MODE}"
|
||||||
|
|
||||||
|
## Memcached global configuration variables
|
||||||
|
#
|
||||||
|
# USE_MEMCACHED: 'yes' | 'no'
|
||||||
|
# Make the created instance use memcached. Can be altered later.
|
||||||
|
# default: 'no'
|
||||||
|
USE_MEMCACHED="${USE_MEMCACHED}"
|
||||||
|
|
||||||
|
# MEMCACHED_SERVERS: comma separated list of memcached servers (ip:port)
|
||||||
|
# Specify a list of memcached servers for the Koha instance
|
||||||
|
# default: '127.0.0.1:11211'
|
||||||
|
MEMCACHED_SERVERS="${MEMCACHED_SERVERS}"
|
||||||
|
|
||||||
|
# MEMCACHED_PREFIX:
|
||||||
|
# Specify a string to be used as prefix for defining the memcached namespace
|
||||||
|
# for the created instance.
|
||||||
|
# default: 'koha_'
|
||||||
|
MEMCACHED_PREFIX="koha_"
|
||||||
12
koha/files/etc/cron.d/koha
Normal file
12
koha/files/etc/cron.d/koha
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
# /etc/cron.d/koha-common
|
||||||
|
#
|
||||||
|
# Call koha-rebuild-zebra for each enabled Koha instance, to make sure the
|
||||||
|
# Zebra indexes are up to date.
|
||||||
|
|
||||||
|
SHELL=/bin/sh
|
||||||
|
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
|
||||||
|
|
||||||
|
# Uncomment the following line if you do not want to use the koha-index-daemon integration
|
||||||
|
# */5 * * * * root test -x /usr/sbin/koha-rebuild-zebra && koha-rebuild-zebra -q $(koha-list --enabled)
|
||||||
|
|
||||||
|
*/15 * * * * root koha-foreach --chdir --enabled --email /usr/share/koha/bin/cronjobs/process_message_queue.pl
|
||||||
33
koha/files/etc/cron.daily/koha
Executable file
33
koha/files/etc/cron.daily/koha
Executable file
@@ -0,0 +1,33 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
# /etc/cron.daily/koha-common -- Daily housekeeping tasks for all Kohas.
|
||||||
|
# Copyright 2010 Catalyst IT, Ltd
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
koha-foreach --chdir --enabled /usr/share/koha/bin/cronjobs/automatic_renewals.pl -c
|
||||||
|
koha-foreach --chdir --enabled /usr/share/koha/bin/cronjobs/automatic_checkin.pl
|
||||||
|
koha-foreach --chdir --enabled /usr/share/koha/bin/cronjobs/recalls/expire_recalls.pl
|
||||||
|
koha-foreach --chdir --enabled /usr/share/koha/bin/cronjobs/recalls/overdue_recalls.pl
|
||||||
|
koha-foreach --chdir --enabled /usr/share/koha/bin/cronjobs/fines.pl
|
||||||
|
koha-foreach --chdir --enabled --email /usr/share/koha/bin/cronjobs/overdue_notices.pl -t
|
||||||
|
koha-foreach --chdir --enabled --email /usr/share/koha/bin/cronjobs/advance_notices.pl -c
|
||||||
|
koha-foreach --chdir --enabled /usr/share/koha/bin/cronjobs/serialsUpdate.pl -c
|
||||||
|
koha-foreach --chdir --enabled /usr/share/koha/bin/cronjobs/membership_expiry.pl -c
|
||||||
|
koha-foreach --chdir --enabled /usr/share/koha/bin/cronjobs/holds/cancel_expired_holds.pl >/dev/null 2>&1
|
||||||
|
koha-foreach --chdir --enabled /usr/share/koha/bin/cronjobs/cleanup_database.pl --confirm --sessions --zebraqueue 10 --list-invites --temp-uploads --del-unv-selfreg 14
|
||||||
|
koha-foreach --chdir --enabled --noemail /usr/share/koha/bin/cronjobs/cleanup_database.pl --confirm --mail
|
||||||
|
koha-foreach --chdir --enabled /usr/share/koha/bin/cronjobs/holds/auto_unsuspend_holds.pl > /dev/null 2>&1
|
||||||
|
koha-foreach --chdir --enabled /usr/share/koha/bin/cronjobs/merge_authorities.pl -b
|
||||||
|
koha-foreach --chdir --enabled /usr/share/koha/bin/cronjobs/plugins_nightly.pl
|
||||||
|
koha-run-backups --days 2 --output /var/spool/koha
|
||||||
20
koha/files/etc/cron.hourly/koha
Executable file
20
koha/files/etc/cron.hourly/koha
Executable file
@@ -0,0 +1,20 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
# /etc/cron.hourly/koha-common -- Hourly housekeeping tasks for all Kohas.
|
||||||
|
# Copyright 2010 Catalyst IT, Ltd
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
|
||||||
|
koha-foreach --chdir --enabled /usr/share/koha/bin/cronjobs/holds/build_holds_queue.pl
|
||||||
|
koha-foreach --chdir --enabled /usr/share/koha/bin/cronjobs/automatic_checkin.pl
|
||||||
19
koha/files/etc/cron.monthly/koha
Executable file
19
koha/files/etc/cron.monthly/koha
Executable file
@@ -0,0 +1,19 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
# /etc/cron.monthly/koha-common -- Monthly housekeeping tasks for all Kohas.
|
||||||
|
# Copyright 2015 Biblibre
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
|
||||||
|
koha-foreach --chdir --enabled /usr/share/koha/bin/cronjobs/share_usage_with_koha_community.pl
|
||||||
1
koha/files/etc/koha-envvars/INSTANCE_NAME
Normal file
1
koha/files/etc/koha-envvars/INSTANCE_NAME
Normal file
@@ -0,0 +1 @@
|
|||||||
|
default
|
||||||
1
koha/files/etc/koha-envvars/KOHA_CONF
Normal file
1
koha/files/etc/koha-envvars/KOHA_CONF
Normal file
@@ -0,0 +1 @@
|
|||||||
|
/etc/koha/sites/default/koha-conf.xml
|
||||||
1
koha/files/etc/koha-envvars/KOHA_HOME
Normal file
1
koha/files/etc/koha-envvars/KOHA_HOME
Normal file
@@ -0,0 +1 @@
|
|||||||
|
/usr/share/koha
|
||||||
1
koha/files/etc/koha-envvars/PERL5LIB
Normal file
1
koha/files/etc/koha-envvars/PERL5LIB
Normal file
@@ -0,0 +1 @@
|
|||||||
|
/usr/share/koha/lib
|
||||||
15
koha/files/etc/logrotate.d/koha-core
Normal file
15
koha/files/etc/logrotate.d/koha-core
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
/var/log/koha/*/*.log {
|
||||||
|
rotate 5
|
||||||
|
weekly
|
||||||
|
missingok
|
||||||
|
copytruncate
|
||||||
|
compress
|
||||||
|
delaycompress
|
||||||
|
notifempty
|
||||||
|
sharedscripts
|
||||||
|
postrotate
|
||||||
|
/command/s6-svc -h /run/service/apache2
|
||||||
|
/command/s6-svc -r /run/service/plack
|
||||||
|
/command/s6-svc -r /run/service/zebra-indexer
|
||||||
|
endscript
|
||||||
|
}
|
||||||
7
koha/files/etc/s6-overlay/s6-rc.d/apache2/run
Executable file
7
koha/files/etc/s6-overlay/s6-rc.d/apache2/run
Executable file
@@ -0,0 +1,7 @@
|
|||||||
|
#!/command/execlineb -P
|
||||||
|
fdmove -c 2 1
|
||||||
|
|
||||||
|
trap { SIGTERM { apache2ctl stop }
|
||||||
|
SIGHUP { apache2ctl graceful } }
|
||||||
|
|
||||||
|
apache2ctl -D "FOREGROUND"
|
||||||
1
koha/files/etc/s6-overlay/s6-rc.d/apache2/type
Normal file
1
koha/files/etc/s6-overlay/s6-rc.d/apache2/type
Normal file
@@ -0,0 +1 @@
|
|||||||
|
longrun
|
||||||
3
koha/files/etc/s6-overlay/s6-rc.d/cron/run
Executable file
3
koha/files/etc/s6-overlay/s6-rc.d/cron/run
Executable file
@@ -0,0 +1,3 @@
|
|||||||
|
#!/command/execlineb -P
|
||||||
|
fdmove -c 2 1
|
||||||
|
/usr/sbin/cron -f -L 5
|
||||||
1
koha/files/etc/s6-overlay/s6-rc.d/cron/type
Normal file
1
koha/files/etc/s6-overlay/s6-rc.d/cron/type
Normal file
@@ -0,0 +1 @@
|
|||||||
|
longrun
|
||||||
6
koha/files/etc/s6-overlay/s6-rc.d/plack/run
Executable file
6
koha/files/etc/s6-overlay/s6-rc.d/plack/run
Executable file
@@ -0,0 +1,6 @@
|
|||||||
|
#!/command/execlineb -P
|
||||||
|
fdmove -c 2 1
|
||||||
|
|
||||||
|
s6-envdir /etc/koha-envvars
|
||||||
|
|
||||||
|
/usr/bin/starman -M FindBin --socket /var/run/koha/default/plack.sock --max-requests 50 --workers 2 -E deployment --user=default-koha --group=default-koha --access-log /var/log/koha/default/plack.log --error-log /var/log/koha/default/plack-error.log "/etc/koha/plack.psgi"
|
||||||
1
koha/files/etc/s6-overlay/s6-rc.d/plack/type
Normal file
1
koha/files/etc/s6-overlay/s6-rc.d/plack/type
Normal file
@@ -0,0 +1 @@
|
|||||||
|
longrun
|
||||||
1
koha/files/etc/s6-overlay/s6-rc.d/prepare-koha/type
Normal file
1
koha/files/etc/s6-overlay/s6-rc.d/prepare-koha/type
Normal file
@@ -0,0 +1 @@
|
|||||||
|
oneshot
|
||||||
1
koha/files/etc/s6-overlay/s6-rc.d/prepare-koha/up
Executable file
1
koha/files/etc/s6-overlay/s6-rc.d/prepare-koha/up
Executable file
@@ -0,0 +1 @@
|
|||||||
|
/etc/s6-overlay/scripts/02-setup-koha.sh
|
||||||
1
koha/files/etc/s6-overlay/s6-rc.d/prepare/type
Normal file
1
koha/files/etc/s6-overlay/s6-rc.d/prepare/type
Normal file
@@ -0,0 +1 @@
|
|||||||
|
bundle
|
||||||
9
koha/files/etc/s6-overlay/s6-rc.d/worker-long-tasks/run
Executable file
9
koha/files/etc/s6-overlay/s6-rc.d/worker-long-tasks/run
Executable file
@@ -0,0 +1,9 @@
|
|||||||
|
#!/command/execlineb -P
|
||||||
|
|
||||||
|
fdmove -c 2 1
|
||||||
|
|
||||||
|
s6-envdir /etc/koha-envvars
|
||||||
|
|
||||||
|
s6-setuidgid default-koha
|
||||||
|
|
||||||
|
/usr/bin/perl /usr/share/koha/bin/workers/background_jobs_worker.pl --queue long_tasks
|
||||||
1
koha/files/etc/s6-overlay/s6-rc.d/worker-long-tasks/type
Normal file
1
koha/files/etc/s6-overlay/s6-rc.d/worker-long-tasks/type
Normal file
@@ -0,0 +1 @@
|
|||||||
|
longrun
|
||||||
9
koha/files/etc/s6-overlay/s6-rc.d/worker/run
Executable file
9
koha/files/etc/s6-overlay/s6-rc.d/worker/run
Executable file
@@ -0,0 +1,9 @@
|
|||||||
|
#!/command/execlineb -P
|
||||||
|
|
||||||
|
fdmove -c 2 1
|
||||||
|
|
||||||
|
s6-envdir /etc/koha-envvars
|
||||||
|
|
||||||
|
s6-setuidgid default-koha
|
||||||
|
|
||||||
|
/usr/bin/perl /usr/share/koha/bin/workers/background_jobs_worker.pl
|
||||||
1
koha/files/etc/s6-overlay/s6-rc.d/worker/type
Normal file
1
koha/files/etc/s6-overlay/s6-rc.d/worker/type
Normal file
@@ -0,0 +1 @@
|
|||||||
|
longrun
|
||||||
16
koha/files/etc/s6-overlay/s6-rc.d/zebra-indexer/run
Executable file
16
koha/files/etc/s6-overlay/s6-rc.d/zebra-indexer/run
Executable file
@@ -0,0 +1,16 @@
|
|||||||
|
#!/command/execlineb -P
|
||||||
|
with-contenv
|
||||||
|
|
||||||
|
importas -D "" elastic USE_ELASTICSEARCH
|
||||||
|
|
||||||
|
if -n { test "${elastic}" = "true" }
|
||||||
|
|
||||||
|
redirfd -a 1 /var/log/koha/default/zebra-indexer.log
|
||||||
|
|
||||||
|
fdmove -c 2 1
|
||||||
|
|
||||||
|
s6-envdir /etc/koha-envvars
|
||||||
|
|
||||||
|
s6-setuidgid default-koha
|
||||||
|
|
||||||
|
/usr/bin/perl /usr/share/koha/bin/migration_tools/rebuild_zebra.pl -daemon -sleep 5
|
||||||
1
koha/files/etc/s6-overlay/s6-rc.d/zebra-indexer/type
Normal file
1
koha/files/etc/s6-overlay/s6-rc.d/zebra-indexer/type
Normal file
@@ -0,0 +1 @@
|
|||||||
|
longrun
|
||||||
15
koha/files/etc/s6-overlay/s6-rc.d/zebra-server/run
Executable file
15
koha/files/etc/s6-overlay/s6-rc.d/zebra-server/run
Executable file
@@ -0,0 +1,15 @@
|
|||||||
|
#!/command/execlineb -P
|
||||||
|
with-contenv
|
||||||
|
|
||||||
|
importas -D "" elastic USE_ELASTICSEARCH
|
||||||
|
|
||||||
|
if -n { test "${elastic}" = "true" }
|
||||||
|
|
||||||
|
fdmove -c 2 1
|
||||||
|
|
||||||
|
s6-envdir /etc/koha-envvars
|
||||||
|
|
||||||
|
s6-setuidgid default-koha
|
||||||
|
|
||||||
|
/usr/bin/zebrasrv -v 1 -f /etc/koha/sites/default/koha-conf.xml
|
||||||
|
|
||||||
1
koha/files/etc/s6-overlay/s6-rc.d/zebra-server/type
Normal file
1
koha/files/etc/s6-overlay/s6-rc.d/zebra-server/type
Normal file
@@ -0,0 +1 @@
|
|||||||
|
longrun
|
||||||
97
koha/files/etc/s6-overlay/scripts/02-setup-koha.sh
Executable file
97
koha/files/etc/s6-overlay/scripts/02-setup-koha.sh
Executable file
@@ -0,0 +1,97 @@
|
|||||||
|
#!/command/with-contenv bash
|
||||||
|
|
||||||
|
export KOHA_INSTANCE=default
|
||||||
|
|
||||||
|
export KOHA_INTRANET_PORT=8081
|
||||||
|
export KOHA_OPAC_PORT=8080
|
||||||
|
export MEMCACHED_SERVERS=${MEMCACHED_SERVERS:-memcached}
|
||||||
|
export MYSQL_SERVER=${MYSQL_SERVER:-db}
|
||||||
|
export DB_NAME=${DB_NAME:-koha_default}
|
||||||
|
export MYSQL_USER=${MYSQL_USER:-koha_default}
|
||||||
|
export MYSQL_PASSWORD=${MYSQL_PASSWORD:-$(pwgen -s 15 1)}
|
||||||
|
export ZEBRA_MARC_FORMAT=${ZEBRA_MARC_FORMAT:-marc21}
|
||||||
|
export KOHA_PLACK_NAME=${KOHA_PLACK_NAME:-koha}
|
||||||
|
export KOHA_ES_NAME=${KOHA_ES_NAME:-es}
|
||||||
|
|
||||||
|
# RabbitMQ settings
|
||||||
|
export MB_HOST=${MB_HOST:-rabbitmq}
|
||||||
|
export MB_PORT=${MB_PORT:-61613}
|
||||||
|
export MB_USER=${MB_USER:-guest}
|
||||||
|
export MB_PASS=${MB_PASS:-guest}
|
||||||
|
|
||||||
|
envsubst < /docker/templates/koha-sites.conf > /etc/koha/koha-sites.conf
|
||||||
|
|
||||||
|
|
||||||
|
# /etc/mysql/koha-common.cnf is used by a few koha scripts
|
||||||
|
rm /etc/mysql/koha-common.cnf && envsubst < /docker/templates/koha-common.cnf > /etc/mysql/koha-common.cnf
|
||||||
|
chmod 660 /etc/mysql/koha-common.cnf
|
||||||
|
|
||||||
|
# Create entry with admin username, password and myqsl server for this instance
|
||||||
|
echo -n "default:${MYSQL_USER}:${MYSQL_PASSWORD}:${DB_NAME}:${MYSQL_SERVER}" > /etc/koha/passwd
|
||||||
|
|
||||||
|
source /usr/share/koha/bin/koha-functions.sh
|
||||||
|
|
||||||
|
MB_PARAMS="--mb-host ${MB_HOST} --mb-port ${MB_PORT} --mb-user ${MB_USER} --mb-pass ${MB_PASS}"
|
||||||
|
|
||||||
|
# Configure the elasticsearch server
|
||||||
|
ES_PARAMS=""
|
||||||
|
if [[ "${USE_ELASTICSEARCH}" = "true" ]]
|
||||||
|
then
|
||||||
|
ES_PARAMS="--elasticsearch-server ${ELASTICSEARCH_HOST}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! is_instance ${KOHA_INSTANCE} || [ ! -f "/etc/koha/sites/${KOHA_INSTANCE}/koha_conf.xml" ]
|
||||||
|
then
|
||||||
|
echo "Executing koha-create for instance ${KOHA_INSTANCE}"
|
||||||
|
koha-create ${ES_PARAMS} ${MB_PARAMS} --use-db ${KOHA_INSTANCE} | true
|
||||||
|
else
|
||||||
|
echo "Creating directory structure"
|
||||||
|
koha-create-dirs ${KOHA_INSTANCE}
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Configure search daemon
|
||||||
|
if [ "${USE_ELASTICSEARCH}" = "true" ]
|
||||||
|
then
|
||||||
|
koha-elasticsearch --rebuild -p $(grep -c ^processor /proc/cpuinfo) ${KOHA_INSTANCE} &
|
||||||
|
fi
|
||||||
|
|
||||||
|
for i in $(koha-translate -l)
|
||||||
|
do
|
||||||
|
if [ "${KOHA_LANGS}" = "" ] || ! echo "${KOHA_LANGS}"|grep -q -w $i
|
||||||
|
then
|
||||||
|
echo "Removing language $i"
|
||||||
|
koha-translate -r $i
|
||||||
|
else
|
||||||
|
echo "Checking language $i"
|
||||||
|
koha-translate -c $i
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ "${KOHA_LANGS}" != "" ]
|
||||||
|
then
|
||||||
|
echo "Installing languages"
|
||||||
|
LANGS=$(koha-translate -l)
|
||||||
|
for i in $KOHA_LANGS
|
||||||
|
do
|
||||||
|
if ! echo "${LANGS}"|grep -q -w $i
|
||||||
|
then
|
||||||
|
echo "Installing language $i"
|
||||||
|
koha-translate -i $i
|
||||||
|
else
|
||||||
|
echo "Language $i already present"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
koha-plack --enable ${KOHA_INSTANCE}
|
||||||
|
a2enmod proxy
|
||||||
|
|
||||||
|
# Prevent Plack from throwing permission errors
|
||||||
|
touch /var/log/koha/${KOHA_INSTANCE}/opac-error.log /var/log/koha/${KOHA_INSTANCE}/intranet-error.log
|
||||||
|
chown -R ${KOHA_INSTANCE}-koha:${KOHA_INSTANCE}-koha /var/log/koha/${KOHA_INSTANCE}/
|
||||||
|
|
||||||
|
service apache2 stop
|
||||||
|
koha-indexer --stop ${KOHA_INSTANCE}
|
||||||
|
koha-zebra --stop ${KOHA_INSTANCE}
|
||||||
|
koha-worker --stop ${KOHA_INSTANCE}
|
||||||
|
koha-email-enable ${KOHA_INSTANCE}
|
||||||
Reference in New Issue
Block a user