koreader-sync/Dockerfile

40 lines
1.2 KiB
Docker

FROM thallian/confd-env:latest
RUN addgroup syncer
RUN adduser -h /app -D -G syncer syncer
RUN apk --no-cache add tar make git openssl perl gcc musl-dev pcre pcre-dev openssl-dev lua lua-dev unzip curl
RUN apk --no-cache --repository http://dl-3.alpinelinux.org/alpine/edge/testing/ --allow-untrusted add luarocks5.1
WORKDIR /app
RUN luarocks-5.1 install luasec
RUN luarocks-5.1 install luaposix
RUN luarocks-5.1 install redis-lua
RUN luarocks-5.1 install busted
RUN mkdir /app/openresty
RUN wget -qO- https://openresty.org/download/openresty-1.9.15.1.tar.gz | tar -xz -C /app/openresty --strip 1
WORKDIR /app/openresty
RUN ./configure --prefix=/opt/openresty && make && make install
ENV PATH /opt/openresty/nginx/sbin:$PATH
WORKDIR /app
RUN git clone https://github.com/ostinelli/gin
ADD /rootfs /
RUN cd gin && patch -N -p1 < ../gin.patch
RUN cd gin && luarocks-5.1 make
ENV GIN_ENV production
RUN git clone https://github.com/koreader/koreader-sync-server.git server
RUN chown -R syncer:syncer /app
RUN ln -s /usr/lib/lua /usr/local/lib/lua
RUN ln -s /usr/share/lua/ /usr/local/share/lua
RUN apk del tar make git gcc musl-dev pcre-dev openssl-dev lua-dev
EXPOSE 7200