Copy CI and Dockerfile from jafner/docker-calibre-web

This commit is contained in:
Joey Hafner 2022-07-12 07:07:43 +00:00
parent 0b77cfa05e
commit 2a26e1f642
2 changed files with 78 additions and 0 deletions

11
.gitlab-ci.yml Normal file
View File

@ -0,0 +1,11 @@
build_image:
image: docker
stage: build
services:
- docker:dind
script:
- echo $CI_REGISTRY_USER
- echo $CI_REGISTRY
- docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
- docker build --no-cache -t $CI_REGISTRY/jafner/calibre-web/calibre-web:$CI_COMMIT_SHA -t $CI_REGISTRY/jafner/calibre-web/calibre-web:latest .
- docker push $CI_REGISTRY/jafner/calibre-web/calibre-web --all-tags

67
Dockerfile Normal file
View File

@ -0,0 +1,67 @@
FROM ghcr.io/linuxserver/baseimage-ubuntu:focal
RUN \
echo "**** install build packages ****" && \
apt-get update && \
apt-get install -y \
git \
libldap2-dev \
libsasl2-dev \
python3-pip
RUN \
echo "**** install runtime packages ****" && \
apt-get install -y \
imagemagick \
libnss3 \
libxcomposite1 \
libxi6 \
libxslt1.1 \
libldap-2.4-2 \
libsasl2-2 \
libxrandr2 \
python3-minimal \
python3-pkg-resources \
unrar
RUN \
echo "**** install kepubify ****" && \
if [ -z ${KEPUBIFY_RELEASE+x} ]; then \
KEPUBIFY_RELEASE=$(curl -sX GET "https://api.github.com/repos/pgaskin/kepubify/releases/latest" \
| awk '/tag_name/{print $4;exit}' FS='[""]'); \
fi && \
curl -o \
/usr/bin/kepubify -L \
https://github.com/pgaskin/kepubify/releases/download/${KEPUBIFY_RELEASE}/kepubify-linux-64bit
RUN \
echo "**** install calibre-web (a worse way than LSIO's method) ****" && \
# this is my lazy alternative to lsio's pretty one:
git clone https://gitlab.jafner.net/Jafner/calibre-web.git /app/calibre-web && \
cd /app/calibre-web && \
pip3 install --no-cache-dir -U \
pip && \
pip install --no-cache-dir -U --ignore-installed --find-links https://wheel-index.linuxserver.io/ubuntu/ -r \
requirements.txt -r \
optional-requirements.txt
RUN \
echo "**** cleanup ****" && \
apt-get -y purge \
git \
libldap2-dev \
libsasl2-dev \
python3-pip && \
apt-get -y autoremove && \
rm -rf \
/tmp/* \
/var/lib/apt/lists/* \
/var/tmp/* \
/root/.cache
# add local files
COPY root/ /
# ports and volumes
EXPOSE 8083
VOLUME /config