summaryrefslogtreecommitdiff
path: root/.docker/app/Dockerfile
blob: 0092b76ba7dac1939c767f6f95342c63e4368e40 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
FROM registry.fakecake.org/docker.io/alpine:3.13
EXPOSE 9000/tcp

ENV SCRIPT_ROOT=/opt/epube
ENV SRC_DIR=/src/epube

RUN apk add --no-cache php8 php8-fpm \
	php8-pdo php8-gd php8-mbstring \
	php8-intl php8-xml php8-session \
	php8-dom php8-fileinfo php8-json \
	php8-sqlite3 php8-pdo_sqlite sqlite \
	php8-zip php8-curl php8-openssl git \
	sudo php8-pecl-xdebug rsync && \
	sed -i -e 's/post_max_size = 8M/post_max_size = 64M/' /etc/php8/php.ini && \
	sed -i -e 's/^listen = 127.0.0.1:9000/listen = 9000/' \
		-e 's/;\(clear_env\) = .*/\1 = no/i' \
		-e 's/^\(user\|group\) = .*/\1 = app/i' \
		-e 's/;\(php_admin_value\[error_log\]\) = .*/\1 = \/tmp\/error.log/' \
		-e 's/;\(php_admin_flag\[log_errors\]\) = .*/\1 = on/' \
			/etc/php8/php-fpm.d/www.conf && \
	mkdir -p /var/www ${SCRIPT_ROOT}/config.d

ADD --chmod=0755 startup.sh ${SCRIPT_ROOT}
ADD index.php ${SCRIPT_ROOT}
ADD config.docker.php ${SCRIPT_ROOT}

COPY --from=app-src . ${SRC_DIR}

ENV PHP_WORKER_MAX_CHILDREN=5
ENV PHP_WORKER_MEMORY_LIMIT=256M

ARG ORIGIN_REPO=https://git.tt-rss.org/fox/the-epube.git
ARG ORIGIN_COMMIT=

ENV ORIGIN_REPO_MAIN=${ORIGIN_REPO_MAIN}
ENV ORIGIN_REPO_XACCEL=${ORIGIN_REPO_XACCEL}
ENV ORIGIN_COMMIT=${ORIGIN_COMMIT}

ENV OWNER_UID=1000
ENV OWNER_GID=1000

ENV EPUBE_ADMIN_USER="admin"
ENV EPUBE_ADMIN_PASS="password"

# EPUBE_XDEBUG_HOST defaults to host IP if unset
ENV EPUBE_XDEBUG_ENABLED=""
ENV EPUBE_XDEBUG_HOST=""
ENV EPUBE_XDEBUG_PORT="9000"

ENV EPUBE_SCRATCH_DB="db/scratch.db"
ENV EPUBE_BOOKS_DIR="/books"
ENV EPUBE_CALIBRE_DB="/books/metadata.db"
ENV EPUBE_DICT_SERVER="dict"


CMD ${SCRIPT_ROOT}/startup.sh