Compare commits

...

10 Commits

13 changed files with 63 additions and 73 deletions

View File

@ -1,9 +0,0 @@
root = true
[*]
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true
indent_style = space
indent_size = 4

View File

@ -0,0 +1,12 @@
name: Build Multiarch Container Image
on: [push]
jobs:
call-reusable-workflow:
uses: container/multiarch-build-workflow/.gitea/workflows/build.yaml@main
with:
repository: ${{ gitea.repository }}
ref_name: ${{ gitea.ref_name }}
sha: ${{ gitea.sha }}
registry_url: ${{ secrets.REGISTRY_URL }}
registry_user: ${{ secrets.REGISTRY_USER }}
registry_pw: ${{ secrets.REGISTRY_PW }}

View File

@ -1,13 +0,0 @@
variables:
IMAGE_NAME: thallian/cops
build:
stage: build
script:
- docker login -u $DOCKER_USER -p $DOCKER_PASSWORD $DOCKER_REGISTRY
- docker build -t $IMAGE_NAME:$CI_COMMIT_SHA .
- docker build -t $IMAGE_NAME:$CI_COMMIT_REF_NAME .
- docker build -t $IMAGE_NAME:latest .
- docker push $IMAGE_NAME:$CI_COMMIT_SHA
- docker push $IMAGE_NAME:$CI_COMMIT_REF_NAME
- docker push $IMAGE_NAME:latest

43
Containerfile Normal file
View File

@ -0,0 +1,43 @@
FROM docker.io/thallian/php8-fpm:3.19-8.3
ENV FPMUSER nginx
ENV FPMGROUP nginx
ENV VERSION 2.5.0
RUN apk add --no-cache \
openssl \
git \
nginx \
wget \
php83 \
php83-opcache \
php83-pcntl \
php83-gd \
php83-sqlite3 \
php83-json \
php83-intl \
php83-xml \
php83-mbstring \
php83-zip \
php83-openssl \
php83-phar \
php83-pdo_sqlite \
php83-ctype \
php83-xmlwriter \
php83-dom
RUN mkdir -p /usr/share/webapps/cops
RUN wget -qO- https://github.com/mikespub-org/seblucas-cops/archive/$VERSION.tar.gz | tar xz -C /usr/share/webapps/cops --strip 1
WORKDIR /usr/share/webapps/cops
ENV COMPOSER_HASH=72600201c73c7c4b218f1c0511b36d8537963e36aafa244757f52309f885b314
RUN wget https://getcomposer.org/download/2.6.6/composer.phar
RUN echo "$COMPOSER_HASH composer.phar" | sha256sum -c - || exit 1
RUN php83 composer.phar install --no-dev --optimize-autoloader
RUN chown -R nginx:nginx /usr/share/webapps/cops
ADD /rootfs /
VOLUME /var/lib/cops/calibre

View File

@ -1,45 +0,0 @@
FROM thallian/php7-fpm:latest
ENV FPMUSER nginx
ENV FPMGROUP nginx
ENV VERSION f65537cdc6f11e135fdc0fbfcaf05524f63ec667
RUN apk add --no-cache \
libressl \
git \
nginx \
wget \
php7 \
php7-opcache \
php7-pcntl \
php7-gd \
php7-sqlite3 \
php7-json \
php7-intl \
php7-xml \
php7-mbstring \
php7-zip \
php7-openssl \
php7-phar \
php7-pdo_sqlite \
php7-ctype \
php7-xmlwriter \
php7-dom
RUN mkdir -p /usr/share/webapps/cops
RUN wget -qO- https://github.com/seblucas/cops/archive/$VERSION.tar.gz | tar xz -C /usr/share/webapps/cops --strip 1
WORKDIR /usr/share/webapps/cops
RUN wget https://getcomposer.org/download/1.9.0/composer.phar
RUN php composer.phar --no-plugins global require "fxp/composer-asset-plugin:~1.1"
RUN php composer.phar install --no-dev --optimize-autoloader
RUN chown -R nginx:nginx /usr/share/webapps/cops
RUN mkdir /run/nginx
RUN rm /etc/nginx/conf.d/default.conf
ADD /rootfs /
VOLUME /var/lib/cops/calibre

View File

@ -1,4 +1,4 @@
[COPS](https://github.com/seblucas/cops), a web-based light alternative to Calibre content server.
[COPS](https://github.com/mikespub-org/seblucas-cops), a web-based light alternative to Calibre content server.
# Volumes
- `/var/lib/cops/calibre`
@ -13,4 +13,4 @@ Domain where the cops instance is reachable.
Website title.
# Ports
- 80
- 8080

View File

@ -1,3 +1,3 @@
[template]
src = "cops.conf.tmpl"
dest = "/etc/nginx/conf.d/cops.conf"
dest = "/etc/nginx/http.d/cops.conf"

View File

@ -4,7 +4,6 @@
$config['calibre_directory'] = '/var/lib/cops/calibre/';
$config['calibre_internal_directory'] = '/calibre/';
$config['cops_full_url'] = '{{ getenv "DOMAIN" }}';
$config['cops_x_accel_redirect'] = "X-Accel-Redirect";

View File

@ -6,7 +6,8 @@ upstream php {
}
server {
listen 80;
listen [::]:8080;
listen 8080;
server_name {{getenv "DOMAIN"}};

View File

@ -0,0 +1 @@
confd

View File

@ -1,3 +1,3 @@
#!/usr/bin/with-contenv sh
#!/bin/sh
exec nginx -g "daemon off;"

View File

@ -0,0 +1 @@
longrun