diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..b6a712e --- /dev/null +++ b/Dockerfile @@ -0,0 +1,14 @@ +FROM debian:jessie +MAINTAINER DAVID Stefan + +RUN apt-get update && \ + DEBIAN_FRONTEND=noninteractive apt-get install -yq --no-install-recommends rsync && \ + apt-get clean autoclean && \ + apt-get autoremove -y && \ + rm -rf /var/lib/apt/lists/* + +EXPOSE 873 +VOLUME /docker +ADD ./rsync /usr/local/bin/rsync + +ENTRYPOINT ["/usr/local/bin/rsync"] diff --git a/rsync b/rsync new file mode 100644 index 0000000..940a216 --- /dev/null +++ b/rsync @@ -0,0 +1,23 @@ +#!/bin/bash +VOLUME=${VOLUME:-/docker} +ALLOW=${ALLOW:-192.168.0.0/16 172.16.0.0/12} +OWNER=${OWNER:-nobody} +GROUP=${GROUP:-nogroup} + +chown "${OWNER}:${GROUP}" "${VOLUME}" + +[ -f /etc/rsyncd.conf ] || cat < /etc/rsyncd.conf +uid = ${OWNER} +gid = ${GROUP} +use chroot = yes +log file = /dev/stdout +reverse lookup = no +[volume] + hosts deny = * + hosts allow = ${ALLOW} + read only = false + path = ${VOLUME} + comment = docker volume +EOF + +exec /usr/bin/rsync --no-detach --daemon --config /etc/rsyncd.conf "$@"