[Rspamd] Set Redis slaveof if not master, adjust redis configs automatically
parent
15fb2e22ea
commit
b889c70db8
|
@ -15,7 +15,7 @@ RUN apt-get update && apt-get install -y \
|
||||||
&& apt-key adv --fetch-keys https://rspamd.com/apt-stable/gpg.key \
|
&& apt-key adv --fetch-keys https://rspamd.com/apt-stable/gpg.key \
|
||||||
&& echo "deb [arch=amd64] https://rspamd.com/apt-stable/ $CODENAME main" > /etc/apt/sources.list.d/rspamd.list \
|
&& echo "deb [arch=amd64] https://rspamd.com/apt-stable/ $CODENAME main" > /etc/apt/sources.list.d/rspamd.list \
|
||||||
&& apt-get update \
|
&& apt-get update \
|
||||||
&& apt-get --no-install-recommends -y install rspamd \
|
&& apt-get --no-install-recommends -y install rspamd redis-tools \
|
||||||
&& rm -rf /var/lib/apt/lists/* \
|
&& rm -rf /var/lib/apt/lists/* \
|
||||||
&& apt-get autoremove --purge \
|
&& apt-get autoremove --purge \
|
||||||
&& apt-get clean \
|
&& apt-get clean \
|
||||||
|
|
|
@ -52,6 +52,33 @@ if [[ ! -z ${RSPAMD_V6} ]]; then
|
||||||
echo ${RSPAMD_V6}/128 >> /etc/rspamd/custom/rspamd_trusted.map
|
echo ${RSPAMD_V6}/128 >> /etc/rspamd/custom/rspamd_trusted.map
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [[ ! -z ${REDIS_SLAVEOF_IP} ]]; then
|
||||||
|
cat <<EOF > /etc/rspamd/local.d/redis.conf
|
||||||
|
read_servers = "redis:6379";
|
||||||
|
write_servers = "${REDIS_SLAVEOF_IP}:${REDIS_SLAVEOF_PORT}";
|
||||||
|
timeout = 10;
|
||||||
|
EOF
|
||||||
|
until [[ $(redis-cli -h redis-mailcow PING) == "PONG" ]]; do
|
||||||
|
echo "Waiting for Redis slave..."
|
||||||
|
sleep 2
|
||||||
|
done
|
||||||
|
until [[ $(redis-cli -h ${REDIS_SLAVEOF_IP} -p ${REDIS_SLAVEOF_PORT} PING) == "PONG" ]]; do
|
||||||
|
echo "Waiting for Redis master..."
|
||||||
|
sleep 2
|
||||||
|
done
|
||||||
|
redis-cli -h redis-mailcow SLAVEOF ${REDIS_SLAVEOF_IP} ${REDIS_SLAVEOF_PORT}
|
||||||
|
else
|
||||||
|
cat <<EOF > /etc/rspamd/local.d/redis.conf
|
||||||
|
servers = "redis:6379";
|
||||||
|
timeout = 10;
|
||||||
|
EOF
|
||||||
|
until [[ $(redis-cli -h redis-mailcow PING) == "PONG" ]]; do
|
||||||
|
echo "Waiting for Redis slave..."
|
||||||
|
sleep 2
|
||||||
|
done
|
||||||
|
redis-cli -h redis-mailcow SLAVEOF NO ONE
|
||||||
|
fi
|
||||||
|
|
||||||
chown -R _rspamd:_rspamd /var/lib/rspamd \
|
chown -R _rspamd:_rspamd /var/lib/rspamd \
|
||||||
/etc/rspamd/local.d \
|
/etc/rspamd/local.d \
|
||||||
/etc/rspamd/override.d \
|
/etc/rspamd/override.d \
|
||||||
|
|
Loading…
Reference in New Issue