FROM alpine:latest
MAINTAINER Adrian Dvergsdal [atmoz.net]

# Steps done in one RUN layer:
# - Install packages
# - OpenSSH needs /var/run/sshd to run
# - Remove generic host keys, entrypoint generates unique keys
RUN echo "@community http://dl-cdn.alpinelinux.org/alpine/edge/community" >> /etc/apk/repositories && \
    apk add --no-cache bash shadow@community openssh-server-pam openssh-sftp-server && \
    ln -s /usr/sbin/sshd.pam /usr/sbin/sshd && \
    mkdir -p /var/run/sshd && \
    rm -f /etc/ssh/ssh_host_*key* && \
    apk --no-cache add dos2unix

COPY files/sshd_config /etc/ssh/sshd_config
COPY files/create-sftp-user /usr/local/bin/
COPY files/entrypoint /

RUN dos2unix /etc/ssh/sshd_config
RUN dos2unix /usr/local/bin/create-sftp-user
RUN dos2unix /entrypoint

RUN chmod +x /entrypoint
RUN chmod +x /usr/local/bin/create-sftp-user

RUN apk del dos2unix --force-broken-world --progress && \
    rm -rf /var/cache/apk/*

EXPOSE 22

ENTRYPOINT ["/entrypoint"]