freifunk-rhein-sieg.net/Dockerfile
2019-12-02 19:05:40 +00:00

13 lines
1009 B
Docker

FROM nginx:1
MAINTAINER Freifunk Rhein-Sieg e.V. <technik@freifunk-rhein-sieg.net>
EXPOSE 80
WORKDIR /project
RUN apt-get update -y && apt-get install -y git ruby ruby-dev rubygems build-essential cron
RUN gem install bundle
RUN git init && git remote add origin https://git.freifunk-rhein-sieg.net/Freifunk-Rhein-Sieg/freifunk-rhein-sieg.net
RUN touch /etc/cron.d/update && touch /srv/update.sh && chmod 775 /srv/update.sh && chmod 644 /etc/cron.d/update && touch /var/log/cron.log
RUN echo "cd /project && git pull origin master && /usr/local/bin/jekyll build && rm -rf /usr/share/nginx/html/* && cp -r _site/* /usr/share/nginx/html" > /srv/update.sh
RUN echo "*/30 * * * * root /srv/update.sh >> /var/log/cron.log 2>&1" > /etc/cron.d/update
RUN gem install bundler:1.16.2
ENTRYPOINT git fetch && git pull origin master && bundle install && bundle exec jekyll build && rm -rf /usr/share/nginx/html/* && cp -r _site/* /usr/share/nginx/html && echo "ready" && /etc/init.d/cron start && nginx -g "daemon off;"