mirror of
https://github.com/zokradonh/kopano-docker
synced 2025-06-07 07:56:12 +00:00
Hardcoded server names (#298)
* use variables to check if the server is running * use kopano_con to address the specified kopano socket in an unified way * set default value for kopano_con
This commit is contained in:
parent
20bbbd2085
commit
7eab9c7c06
@ -1,12 +1,19 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -eu # unset variables are errors & non-zero return values exit the whole script
|
||||
[ "$DEBUG" ] && set -x
|
||||
|
||||
ADDITIONAL_KOPANO_PACKAGES=${ADDITIONAL_KOPANO_PACKAGES:-""}
|
||||
KCCONF_SERVER_MYSQL_SOCKET=${KCCONF_SERVER_MYSQL_SOCKET:-""}
|
||||
DISABLE_CHECKS=${DISABLE_CHECKS:-false}
|
||||
DISABLE_CONFIG_CHANGES=${DISABLE_CONFIG_CHANGES:-false}
|
||||
|
||||
set -eu # unset variables are errors & non-zero return values exit the whole script
|
||||
[ "$DEBUG" ] && set -x
|
||||
KCCONF_DAGENT_SERVER_SOCKET=${KCCONF_DAGENT_SERVER_SOCKET:-"file:///var/run/kopano/server.sock"}
|
||||
KCCONF_GATEWAY_SERVER_SOCKET=${KCCONF_GATEWAY_SERVER_SOCKET:-"tcp://kopano_server:236"}
|
||||
KCCONF_ICAL_SERVER_SOCKET=${KCCONF_ICAL_SERVER_SOCKET:-"tcp://kopano_server:236"}
|
||||
KCCONF_MONITOR_SERVER_SOCKET=${KCCONF_MONITOR_SERVER_SOCKET:-"file:///var/run/kopano/server.sock"}
|
||||
KCCONF_SEARCH_SERVER_SOCKET=${KCCONF_SEARCH_SERVER_SOCKET:-"file:///var/run/kopano/server.sock"}
|
||||
KCCONF_SPOOLER_SERVER_SOCKET=${KCCONF_SPOOLER_SERVER_SOCKET:-"file:///var/run/kopano/server.sock"}
|
||||
KOPANO_CON=${KOPANO_CON:-"file:///var/run/kopano/server.sock"}
|
||||
|
||||
if [ ! -e /kopano/"$SERVICE_TO_START".py ]; then
|
||||
echo "Invalid service specified: $SERVICE_TO_START" | ts
|
||||
@ -35,7 +42,7 @@ fi
|
||||
rm -f /var/run/kopano/"$SERVICE_TO_START".pid
|
||||
|
||||
echo "Set ownership" | ts
|
||||
chown kopano:kopano /kopano/data/ /kopano/data/attachments
|
||||
chown kopano:kopano /kopano/data/ /kopano/data/attachments
|
||||
chown kapi:kopano /var/lib/kopano-grapi
|
||||
|
||||
# allow helper commands given by "docker-compose run"
|
||||
@ -50,6 +57,32 @@ if [[ "$DISABLE_CHECKS" == false ]]; then
|
||||
-wait file:///etc/machine-id \
|
||||
-wait file:///var/lib/dbus/machine-id
|
||||
fi
|
||||
|
||||
# put specified socket into KOPANO_CON variable to ease checks further down
|
||||
case "$SERVICE_TO_START" in
|
||||
dagent)
|
||||
KOPANO_CON="$KCCONF_DAGENT_SERVER_SOCKET"
|
||||
;;
|
||||
gateway)
|
||||
KOPANO_CON="$KCCONF_GATEWAY_SERVER_SOCKET"
|
||||
;;
|
||||
ical)
|
||||
KOPANO_CON="$KCCONF_ICAL_SERVER_SOCKET"
|
||||
;;
|
||||
monitor)
|
||||
KOPANO_CON="$KCCONF_MONITOR_SERVER_SOCKET"
|
||||
;;
|
||||
search)
|
||||
KOPANO_CON="$KCCONF_SEARCH_SERVER_SOCKET"
|
||||
;;
|
||||
spooler)
|
||||
KOPANO_CON="$KCCONF_SPOOLER_SERVER_SOCKET"
|
||||
;;
|
||||
esac
|
||||
if [[ "$KOPANO_CON" =~ ^http.* ]]; then
|
||||
KOPANO_CON=$(sed 's/.*\/\//tcp:\/\//' <<< "$KOPANO_CON")
|
||||
fi
|
||||
|
||||
# start regular service
|
||||
case "$SERVICE_TO_START" in
|
||||
server)
|
||||
@ -77,17 +110,18 @@ server)
|
||||
sed -i -e 's/# de_DE.UTF-8 UTF-8/de_DE.UTF-8 UTF-8/' /etc/locale.gen
|
||||
dpkg-reconfigure --frontend=noninteractive locales
|
||||
|
||||
# determine db connection mode (unix vs. network socket)
|
||||
if [ -n "$KCCONF_SERVER_MYSQL_SOCKET" ]; then
|
||||
DB_CONN="file://$KCCONF_SERVER_MYSQL_SOCKET"
|
||||
else
|
||||
DB_CONN="tcp://$KCCONF_SERVER_MYSQL_HOST:$KCCONF_SERVER_MYSQL_PORT"
|
||||
fi
|
||||
if [[ "$DISABLE_CHECKS" == false ]]; then
|
||||
# determine db connection mode (unix vs. network socket)
|
||||
if [ -n "$KCCONF_SERVER_MYSQL_SOCKET" ]; then
|
||||
DB_CON="file://$KCCONF_SERVER_MYSQL_SOCKET"
|
||||
else
|
||||
DB_CON="tcp://$KCCONF_SERVER_MYSQL_HOST:$KCCONF_SERVER_MYSQL_PORT"
|
||||
fi
|
||||
|
||||
dockerize \
|
||||
-wait file://"$KCCONF_SERVER_SERVER_SSL_CA_FILE" \
|
||||
-wait file://"$KCCONF_SERVER_SERVER_SSL_KEY_FILE" \
|
||||
-wait "$DB_CONN" \
|
||||
-wait "$DB_CON" \
|
||||
-timeout 360s
|
||||
fi
|
||||
# pre populate database
|
||||
@ -101,7 +135,7 @@ server)
|
||||
;;
|
||||
dagent)
|
||||
dockerize \
|
||||
-wait file:///var/run/kopano/server.sock \
|
||||
-wait "$KOPANO_CON" \
|
||||
-timeout 360s
|
||||
# cleaning up env variables
|
||||
unset "${!KCCONF_@}"
|
||||
@ -109,7 +143,7 @@ dagent)
|
||||
;;
|
||||
gateway)
|
||||
dockerize \
|
||||
-wait tcp://kopano_server:236 \
|
||||
-wait "$KOPANO_CON" \
|
||||
-timeout 360s
|
||||
# cleaning up env variables
|
||||
unset "${!KCCONF_@}"
|
||||
@ -117,7 +151,7 @@ gateway)
|
||||
;;
|
||||
ical)
|
||||
dockerize \
|
||||
-wait tcp://kopano_server:236 \
|
||||
-wait "$KOPANO_CON" \
|
||||
-timeout 360s
|
||||
# cleaning up env variables
|
||||
unset "${!KCCONF_@}"
|
||||
@ -177,7 +211,7 @@ kapi)
|
||||
;;
|
||||
monitor)
|
||||
dockerize \
|
||||
-wait file:///var/run/kopano/server.sock \
|
||||
-wait "$KOPANO_CON" \
|
||||
-timeout 360s
|
||||
# cleaning up env variables
|
||||
unset "${!KCCONF_@}"
|
||||
@ -185,7 +219,7 @@ monitor)
|
||||
;;
|
||||
search)
|
||||
dockerize \
|
||||
-wait file:///var/run/kopano/server.sock \
|
||||
-wait "$KOPANO_CON" \
|
||||
-timeout 360s
|
||||
# give kopano-server a moment to settler before starting search
|
||||
sleep 5
|
||||
@ -201,7 +235,7 @@ search)
|
||||
;;
|
||||
spooler)
|
||||
dockerize \
|
||||
-wait file:///var/run/kopano/server.sock \
|
||||
-wait "$KOPANO_CON" \
|
||||
-wait tcp://"$KCCONF_SPOOLER_SMTP_SERVER":25 \
|
||||
-timeout 1080s
|
||||
# cleaning up env variables
|
||||
|
Loading…
x
Reference in New Issue
Block a user