dockerfiles/base/php-nginx/php/7.4-alpine/conf/provision/service.d/syslog.sh

42 lines
1.0 KiB
Bash

#!/usr/bin/env bash
IMAGE_FAMILY=$(docker-image-info family)
# Installation
case "$IMAGE_FAMILY" in
Debian|Ubuntu)
apt-install syslog-ng syslog-ng-core
;;
RedHat)
yum-install syslog-ng
# remove logrotate (not needed for docker)
rm -f "/etc/cron.daily/logrotate"
;;
Alpine)
apk-install syslog-ng
;;
esac
## Configuration
SYSLOG_NG_VERSION=$(syslog-ng --version | grep -E -e '^Installer-Version:[ ]+[0-9]+\.[0-9]+' | head -n 1 | awk '{print $2}' | cut -f 1,2 -d .)
# Disable caps inside container
if [[ -f /etc/default/syslog-ng ]]; then
go-replace --mode=lineinfile \
-s "SYSLOGNG_OPTS" -r "SYSLOGNG_OPTS = --no-caps" \
-- /etc/default/syslog-ng
fi
# Symlink configuration
ln -s -f /opt/docker/etc/syslog-ng/syslog-ng.conf /etc/syslog-ng/syslog-ng.conf
go-replace --mode=lineinfile \
-s "@version" -r "@version: ${SYSLOG_NG_VERSION}" \
-- /etc/syslog-ng/syslog-ng.conf
# Ensure /var/lib/syslog-ng exists
mkdir -p /var/lib/syslog-ng