make it run on alpine 3.11
This commit is contained in:
parent
1c63243d18
commit
8d64896e73
90
Dockerfile
90
Dockerfile
@ -1,41 +1,81 @@
|
|||||||
FROM thallian/confd-env:latest
|
FROM alpine:3.11 as builder
|
||||||
|
|
||||||
ENV OPENRESTY_VERSION 1.11.2.4
|
ENV RESTY_VERSION=1.15.8.2
|
||||||
|
ENV RESTY_SHA256_SUM=436b4e84d547a97a18cf7a2522daf819da8087b188468946b5a89c0dd1ca5d16
|
||||||
|
|
||||||
|
RUN apk --no-cache add \
|
||||||
|
bash \
|
||||||
|
coreutils \
|
||||||
|
perl \
|
||||||
|
make \
|
||||||
|
automake \
|
||||||
|
autoconf \
|
||||||
|
gcc \
|
||||||
|
git \
|
||||||
|
curl \
|
||||||
|
lua5.1-dev \
|
||||||
|
musl-dev \
|
||||||
|
pcre-dev \
|
||||||
|
zlib-dev \
|
||||||
|
lua5.1 \
|
||||||
|
luarocks5.1 \
|
||||||
|
openssl \
|
||||||
|
openssl-dev \
|
||||||
|
pcre-dev \
|
||||||
|
zlib-dev
|
||||||
|
|
||||||
|
RUN ln -s /usr/bin/aclocal-1.16 /usr/bin/aclocal-1.15
|
||||||
|
RUN ln -s /usr/bin/automake-1.16 /usr/bin/automake-1.15
|
||||||
|
|
||||||
|
RUN wget https://openresty.org/download/openresty-$RESTY_VERSION.tar.gz
|
||||||
|
RUN echo "$RESTY_SHA256_SUM openresty-$RESTY_VERSION.tar.gz" | sha256sum -c - || exit 1
|
||||||
|
RUN tar xvf openresty-$RESTY_VERSION.tar.gz
|
||||||
|
RUN cd openresty-$RESTY_VERSION && \
|
||||||
|
./configure --with-pcre-jit --with-ipv6 --with-http_v2_module && \
|
||||||
|
make && \
|
||||||
|
make install
|
||||||
|
|
||||||
|
ADD gin.patch /gin.patch
|
||||||
|
RUN git clone https://github.com/ostinelli/gin
|
||||||
|
|
||||||
|
WORKDIR /gin
|
||||||
|
RUN patch -N -p1 < ../gin.patch
|
||||||
|
RUN luarocks-5.1 make
|
||||||
|
|
||||||
|
WORKDIR /
|
||||||
|
RUN git clone https://github.com/koreader/koreader-sync-server.git
|
||||||
|
|
||||||
|
FROM thallian/confd-env:latest
|
||||||
|
|
||||||
RUN addgroup syncer
|
RUN addgroup syncer
|
||||||
RUN adduser -h /app -D -G syncer syncer
|
RUN adduser -h /app -D -G syncer syncer
|
||||||
|
|
||||||
RUN apk --no-cache add tar redis make git libressl libssl1.0 perl gcc musl-dev pcre pcre-dev openssl-dev lua lua-dev unzip zlib zlib-dev curl luarocks libgcc
|
COPY --from=builder /usr/local/openresty /usr/local/openresty
|
||||||
|
COPY --from=builder /usr/local/share/lua/5.1 /usr/local/share/lua/5.1
|
||||||
|
COPY --from=builder /usr/local/lib/lua/5.1 /usr/local/lib/lua/5.1
|
||||||
|
COPY --from=builder /usr/local/lib/luarocks/rocks-5.1 /usr/local/lib/luarocks/rocks-5.1
|
||||||
|
COPY --from=builder /usr/local/bin/gin /usr/local/bin/gin
|
||||||
|
COPY --from=builder --chown=syncer:syncer /koreader-sync-server /app/server
|
||||||
|
|
||||||
WORKDIR /app
|
RUN ln -s /usr/local/openresty/nginx/sbin/nginx /usr/local/bin/nginx
|
||||||
|
|
||||||
RUN luarocks-5.1 install luasec
|
RUN apk --no-cache add \
|
||||||
RUN luarocks-5.1 install luaposix
|
redis \
|
||||||
RUN luarocks-5.1 install redis-lua
|
openssl \
|
||||||
RUN luarocks-5.1 install busted
|
libgcc \
|
||||||
|
pcre \
|
||||||
|
lua5.1 \
|
||||||
|
unzip \
|
||||||
|
zlib
|
||||||
|
|
||||||
RUN mkdir /app/openresty
|
|
||||||
RUN wget -qO- https://openresty.org/download/openresty-$OPENRESTY_VERSION.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 /
|
ADD /rootfs /
|
||||||
|
|
||||||
RUN cd gin && patch -N -p1 < ../gin.patch
|
|
||||||
RUN cd gin && luarocks-5.1 make
|
|
||||||
ENV GIN_ENV production
|
ENV GIN_ENV production
|
||||||
|
|
||||||
RUN git clone https://github.com/koreader/koreader-sync-server.git server
|
WORKDIR /
|
||||||
RUN chown -R syncer:syncer /app
|
|
||||||
|
|
||||||
RUN ln -s /usr/lib/lua /usr/local/lib/lua
|
#RUN ln -s /usr/lib/lua /usr/local/lib/lua
|
||||||
RUN ln -s /usr/share/lua/ /usr/local/share/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 zlib-dev
|
|
||||||
|
|
||||||
EXPOSE 7200
|
EXPOSE 7200
|
||||||
VOLUME /var/lib/redis/
|
VOLUME /var/lib/redis/
|
||||||
|
15
README.md
15
README.md
@ -1,19 +1,8 @@
|
|||||||
[Koreader Sync Server](https://github.com/koreader/koreader-sync-server) to sync [Koreader](https://github.com/koreader/koreader) devices.
|
[Koreader Sync Server](https://github.com/koreader/koreader-sync-server) to sync
|
||||||
|
[Koreader](https://github.com/koreader/koreader) devices.
|
||||||
|
|
||||||
# Volumes
|
# Volumes
|
||||||
- `/var/lib/redis/`
|
- `/var/lib/redis/`
|
||||||
- `/etc/ssl/nginx/:ro`: certificates must be here
|
|
||||||
|
|
||||||
# Environment Variables
|
|
||||||
## CERT_NAME
|
|
||||||
- default: fullchain.pem
|
|
||||||
|
|
||||||
Name of the certificate file.
|
|
||||||
|
|
||||||
## KEY_NAME
|
|
||||||
- default: privkey.pem
|
|
||||||
|
|
||||||
Name of the key file.
|
|
||||||
|
|
||||||
# Ports
|
# Ports
|
||||||
- 7200
|
- 7200
|
||||||
|
@ -3,10 +3,15 @@ index b9601ec..55f4469 100644
|
|||||||
--- a/gin-0.2.0-1.rockspec
|
--- a/gin-0.2.0-1.rockspec
|
||||||
+++ b/gin-0.2.0-1.rockspec
|
+++ b/gin-0.2.0-1.rockspec
|
||||||
@@ -18,8 +18,9 @@ dependencies = {
|
@@ -18,8 +18,9 @@ dependencies = {
|
||||||
"busted = 2.0.rc10-0",
|
- "lua = 5.1",
|
||||||
"lua-cjson = 2.1.0-1",
|
+ "lua = 5.1",
|
||||||
|
"ansicolors = 1.0.2-3",
|
||||||
|
- "busted = 2.0.rc10-0",
|
||||||
|
+ "busted = 2.0.0-1",
|
||||||
|
- "lua-cjson = 2.1.0-1",
|
||||||
|
+ "lua-cjson = 2.1.0.6-1",
|
||||||
"luasocket = 3.0rc1-2",
|
"luasocket = 3.0rc1-2",
|
||||||
+ "luasec = 0.5-2",
|
+ "luasec = 0.9-1",
|
||||||
"luafilesystem = 1.6.3-1",
|
"luafilesystem = 1.6.3-1",
|
||||||
- "luaposix = 33.3.1-1",
|
- "luaposix = 33.3.1-1",
|
||||||
+ "luaposix = 33.4.0",
|
+ "luaposix = 33.4.0",
|
||||||
@ -44,4 +49,4 @@ index 5ef537a..21ec8f9 100644
|
|||||||
+ local ok, response_status, response_headers = http_request({
|
+ local ok, response_status, response_headers = http_request({
|
||||||
method = request.method,
|
method = request.method,
|
||||||
url = full_url,
|
url = full_url,
|
||||||
source = ltn12.source.string(request.body),
|
source = ltn12.source.string(request.body),
|
Loading…
Reference in New Issue
Block a user