summaryrefslogtreecommitdiffstats
path: root/docker/rsync/files/entry.sh
blob: 587602e9736bdd4bb22ff2b15841e867af9d54b7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/bin/sh

(
	echo "use chroot = yes"
	echo "[${SHARE_NAME:-data}]"
	echo "log file = /dev/null"
	echo "uid = ${SHARE_UID:-1000}"
	echo "gid = ${SHARE_GID:-1000}"
	echo "path = /data"
	echo "read only = false"
	echo "write only = false"
	echo "comment = ${SHARE_COMMENT:-Rsync data share}"

	if [ -n "$SHARE_USER" -a -n "$SHARE_PASSWORD" ]; then
		echo "auth users = $SHARE_USER"
		echo "secrets file = /rsyncd.secrets"
	fi
) > /rsyncd.conf

if [ -n "$SHARE_USER" -a -n "$SHARE_PASSWORD" ]; then
	echo "$SHARE_USER:$SHARE_PASSWORD" > /rsyncd.secrets
	chmod 0600 /rsyncd.secrets
fi

chown "${SHARE_UID:-1000}:${SHARE_GID:-1000}" /data

rm -f /tmp/rsyncd.pid

exec /usr/bin/rsync --daemon --no-detach --config=/rsyncd.conf --log-file=/dev/stdout --dparam=pidfile=/tmp/rsyncd.pid "$@"