FROM phusion/baseimage:0.11

# Use baseimage-docker's init system.
CMD ["/sbin/my_init"]

ENV \
    RUN_DB_MIGRATIONS=true \
    SIDEKIQ_WORKERS=5 \
    RAILS_SERVE_STATIC_FILES=true \
    RAILS_ENV=production \
    NODE_ENV=production \
    PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/mastodon/app/bin

ARG UID=991
ARG GID=991

# mastodon v3.0.1
ARG REPO_URL=https://github.com/tootsuite/mastodon.git
ARG REPO_REV=c4118ba71ba31e408c02d289e111326ccc6f6aa2

# install os prereq stuff to image
ADD prereqs.sh /tmp/prereqs.sh
RUN bash /tmp/prereqs.sh

# install mastodon:
ADD install.sh /tmp/install.sh

WORKDIR /mastodon
ENV HOME /mastodon
RUN chpst -u mastodon:mastodon bash /tmp/install.sh

ADD ./rootfs /

RUN chmod +x /etc/service/postfix/run
RUN chmod +x /etc/service/redis/run
RUN chmod +x /etc/service/postgres/run
RUN chmod +x /etc/service/startup/run
RUN chmod +x /etc/service/sidekiq/run
RUN chmod +x /etc/service/web/run
RUN chmod +x /etc/service/streaming/run

VOLUME /state

EXPOSE 3000 4000

LABEL maintainer="Jeffrey Paul <sneak@sneak.berlin>" \
      description="Your self-hosted, globally interconnected microblogging community"