1
0
mirror of https://github.com/wallabag/docker synced 2025-12-13 17:56:31 +00:00

49 Commits
2.6.2 ... 2.6.9

Author SHA1 Message Date
Jérémy Benoist
2a78ed65fe Merge pull request #411 from wallabag/release/2.6.9
Prepare 2.6.9
2024-04-03 11:14:05 +02:00
Jérémy Benoist
cb78d1c98c Prepare 2.6.9
See https://github.com/wallabag/wallabag/releases/tag/2.6.9
2024-04-03 11:00:19 +02:00
Kevin Decherf
19b6080f31 Merge pull request #404 from wallabag/impr/phpini
Update shipped php.ini with php-production.ini from PHP 8.1
2024-03-11 12:51:25 +01:00
Kevin Decherf
85c82d22c4 Update shipped php.ini with php-production.ini from PHP 8.1
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2024-03-11 12:46:49 +01:00
Kevin Decherf
2ab5b95caf Merge pull request #405 from wallabag/impr/nginx
Update NGINX timeout to align with max_execution_time
2024-03-11 12:03:26 +01:00
Kevin Decherf
2c4fc77b58 Update NGINX timeout to align with max_execution_time
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2024-03-11 11:55:59 +01:00
Kevin Decherf
bffc1412bf Merge pull request #403 from wallabag/impr/memlimit
Add support of PHP memory limit in variables
2024-03-11 11:54:52 +01:00
Kevin Decherf
588c21b192 Add support of PHP memory limit in variables
Supersedes #374

Fixes #124

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2024-03-11 11:52:55 +01:00
Kevin Decherf
6f2ec8654e Merge branch 'master' into 2.6.x 2024-03-10 22:03:33 +01:00
Kevin Decherf
4143013553 Merge pull request #402 from wallabag/fix/sqlite
Fix SQLite provisioning
2024-03-10 21:59:54 +01:00
Kevin Decherf
eaf63d2098 Merge pull request #401 from wallabag/impr/doc
doc: change docker-compose healthcheck target
2024-03-10 21:59:31 +01:00
Kevin Decherf
9c6aca3b76 Fix SQLite provisioning
If we use a local folder volume binding, install_wallabag was failing
because of missing file and permission issues.

This reworks the way we initially create the database when it is missing
or empty.

Superseeds #386

Fixes #316 #346

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2024-03-10 16:21:31 +01:00
Kevin Decherf
e16d9e4113 doc: change docker-compose healthcheck target
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2024-03-10 16:20:26 +01:00
Kevin Decherf
03d1e3a920 Merge pull request #398 from neilbags/patch-1
Add restart: unless-stopped to example docker-compose
2024-03-10 14:11:08 +01:00
Neil McKenzie
7c9d8a37e0 Add restart: unless-stopped to example docker-compose
Most example docker-compose files include restart: unless-stopped or restart: always. This being absent on Wallabag's example leads to unexpected downtime upon server restart
2024-02-01 08:53:52 +11:00
Jérémy Benoist
bdbf7b909a Merge pull request #393 from wallabag/release/2.6.8
Prepare 2.6.8
2024-01-03 09:33:14 +01:00
Jérémy Benoist
bf62096c0e Prepare 2.6.8 2024-01-03 09:32:44 +01:00
Jérémy Benoist
f59fb4b67a Merge pull request #385 from markusnasholm/nginx_ipv6 2023-12-23 07:40:15 +01:00
Markus Näsholm
c68fc98e51 Update nginx.conf to work with IPv6 2023-10-05 20:20:45 +02:00
Jérémy Benoist
919f82516c Merge pull request #384 from wallabag/release/2.6.7
Prepare 2.6.7
2023-10-02 14:32:24 +02:00
Jérémy Benoist
2515407009 Prepare 2.6.7 2023-10-02 14:30:58 +02:00
Yassine Guedidi
96dd9bc3e3 Merge pull request #362 from yguedidi/build-assets
Use the release archive instead of the git archive
2023-09-27 22:34:42 +02:00
Yassine Guedidi
5bde344da3 Use the release archive instead of the git archive 2023-09-27 20:38:11 +02:00
Jérémy Benoist
36d4bf58db Merge pull request #378 from wallabag/impr/imagick
Use php81-pecl-imagick from default repository
2023-09-12 20:56:40 +02:00
Kevin Decherf
e7b0f9c7f6 Use php81-pecl-imagick from default repository
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2023-09-12 20:01:17 +02:00
Jérémy Benoist
5a426ce3fa Merge pull request #376 from itcbx/master 2023-09-11 07:14:38 +02:00
Chen BingXin
75d1b96cc8 Support for gif.
Add imagick extension to support gif.
2023-09-09 10:05:42 +08:00
Jérémy Benoist
9241c7d799 Merge pull request #375 from wallabag/release/2.6.6
Prepare 2.6.6
2023-09-07 09:29:54 +02:00
Jérémy Benoist
18d9f742fb Prepare 2.6.6 2023-09-07 09:29:14 +02:00
Jérémy Benoist
b5d9ba681c Merge pull request #372 from wallabag/release/2.6.5
2.6.5
2023-08-28 10:38:22 +02:00
Jérémy Benoist
b340aaee0a Merge pull request #371 from wallabag/revert-370-release-265
Revert "Update Dockerfile to release 2.6.5"
2023-08-28 10:38:07 +02:00
Jérémy Benoist
746c6e682b 2.6.5 2023-08-28 10:36:30 +02:00
Jérémy Benoist
d7e49fbda9 Revert "Update Dockerfile to release 2.6.5" 2023-08-28 10:35:58 +02:00
Nicolas Lœuillet
8a68a267ed Merge pull request #370 from wallabag/release-265
Update Dockerfile to release 2.6.5
2023-08-28 10:29:43 +02:00
Nicolas Lœuillet
4b00b7f383 Update Dockerfile to release 2.6.5 2023-08-28 10:27:16 +02:00
Nicolas Lœuillet
f1e3a0e2ae Merge pull request #357 from wallabag/change-default-fosuser-registration
Change public registration to false by default
2023-08-24 08:00:42 +02:00
Nicolas Lœuillet
c2b7c3bbd7 Fix test 2023-08-24 07:55:21 +02:00
Nicolas Lœuillet
7810ca6255 Change public registration to false by default 2023-08-24 07:55:21 +02:00
Nicolas Lœuillet
4f406f1f1f Merge pull request #365 from wallabag/nicosomb-patch-1
Update Dockerfile for 2.6.4
2023-08-22 15:50:15 +02:00
Nicolas Lœuillet
7edde03f39 Update Dockerfile for 2.6.4 2023-08-22 15:45:19 +02:00
Nicolas Lœuillet
4b4eb85eb1 Merge pull request #363 from wallabag/nicosomb-patch-1
Update Dockerfile for wallabag 2.6.3
2023-08-21 12:18:25 +02:00
Jérémy Benoist
7ac0c31dc1 Merge pull request #360 from yguedidi/get-composer-from-official-image
Get composer from official image
2023-08-21 12:12:17 +02:00
Nicolas Lœuillet
854d1027b8 Update Dockerfile for wallabag 2.6.3 2023-08-21 12:07:33 +02:00
Yassine Guedidi
f4517471db Get composer from official image 2023-08-15 18:21:29 +02:00
Nicolas Lœuillet
abb6a98924 Merge pull request #361 from yguedidi/rename-root_dir-to-project_dir
Rename root_dir to project_dir
2023-08-14 07:52:51 +02:00
Yassine Guedidi
624616cd9e Rename root_dir to project_dir 2023-08-13 11:48:06 +02:00
Jérémy Benoist
d6ce0cea67 Merge pull request #344 from STaRDoGG/patch-1
Change default workdir
2023-07-24 15:31:15 +02:00
J. Scott Elblein
673dea7800 Merge branch 'master' into patch-1 2023-07-24 07:56:12 -05:00
J. Scott Elblein
659a8f4d3f Update Dockerfile
Sets the workdir to navigate to the wallabag folder when entering.

Makes it much easier to not have to always drill all the way down each time you first shell in.
2023-06-28 12:27:54 -05:00
8 changed files with 732 additions and 674 deletions

View File

@@ -1,3 +1,7 @@
ARG COMPOSER_VERSION=2.5.8
FROM composer:$COMPOSER_VERSION as composer
FROM golang:alpine as builder FROM golang:alpine as builder
# envsubst from gettext can not replace env vars with default values # envsubst from gettext can not replace env vars with default values
@@ -9,7 +13,7 @@ FROM alpine:3.18
COPY --from=builder /go/bin/envsubst /usr/bin/envsubst COPY --from=builder /go/bin/envsubst /usr/bin/envsubst
ARG WALLABAG_VERSION=2.6.2 ARG WALLABAG_VERSION=2.6.9
RUN set -ex \ RUN set -ex \
&& apk add --no-cache \ && apk add --no-cache \
@@ -30,6 +34,7 @@ RUN set -ex \
php81-mbstring \ php81-mbstring \
php81-openssl \ php81-openssl \
php81-pecl-amqp \ php81-pecl-amqp \
php81-pecl-imagick \
php81-pdo_mysql \ php81-pdo_mysql \
php81-pdo_pgsql \ php81-pdo_pgsql \
php81-pdo_sqlite \ php81-pdo_sqlite \
@@ -54,15 +59,14 @@ RUN set -ex \
&& ln -sf /usr/sbin/php-fpm81 /usr/sbin/php-fpm \ && ln -sf /usr/sbin/php-fpm81 /usr/sbin/php-fpm \
&& rm -rf /var/cache/apk/* \ && rm -rf /var/cache/apk/* \
&& ln -sf /dev/stdout /var/log/nginx/access.log \ && ln -sf /dev/stdout /var/log/nginx/access.log \
&& ln -sf /dev/stderr /var/log/nginx/error.log \ && ln -sf /dev/stderr /var/log/nginx/error.log
&& curl -s https://getcomposer.org/installer | php \
&& mv composer.phar /usr/local/bin/composer \ COPY --from=composer /usr/bin/composer /usr/local/bin/composer
&& rm -rf /root/.composer/*
COPY root / COPY root /
RUN set -ex \ RUN set -ex \
&& curl -L -o /tmp/wallabag.tar.gz https://github.com/wallabag/wallabag/archive/$WALLABAG_VERSION.tar.gz \ && curl -L -o /tmp/wallabag.tar.gz https://github.com/wallabag/wallabag/releases/download/$WALLABAG_VERSION/wallabag-$WALLABAG_VERSION.tar.gz \
&& tar xvf /tmp/wallabag.tar.gz -C /tmp \ && tar xvf /tmp/wallabag.tar.gz -C /tmp \
&& mkdir /var/www/wallabag \ && mkdir /var/www/wallabag \
&& mv /tmp/wallabag-*/* /var/www/wallabag/ \ && mv /tmp/wallabag-*/* /var/www/wallabag/ \
@@ -76,6 +80,9 @@ RUN set -ex \
ENV PATH="${PATH}:/var/www/wallabag/bin" ENV PATH="${PATH}:/var/www/wallabag/bin"
# Set console entry path
WORKDIR /var/www/wallabag
EXPOSE 80 EXPOSE 80
ENTRYPOINT ["/entrypoint.sh"] ENTRYPOINT ["/entrypoint.sh"]
CMD ["wallabag"] CMD ["wallabag"]

View File

@@ -30,7 +30,7 @@ Default login is `wallabag:wallabag`.
- `-e SYMFONY__ENV__MAILER_DSN=...` (defaults to "smtp://127.0.0.1") - `-e SYMFONY__ENV__MAILER_DSN=...` (defaults to "smtp://127.0.0.1")
- `-e SYMFONY__ENV__FROM_EMAIL=...`(defaults to "`wallabag@example.com`", the address wallabag uses for outgoing emails) - `-e SYMFONY__ENV__FROM_EMAIL=...`(defaults to "`wallabag@example.com`", the address wallabag uses for outgoing emails)
- `-e SYMFONY__ENV__TWOFACTOR_SENDER=...` (defaults to "`no-reply@wallabag.org`", the address wallabag uses for two-factor emails) - `-e SYMFONY__ENV__TWOFACTOR_SENDER=...` (defaults to "`no-reply@wallabag.org`", the address wallabag uses for two-factor emails)
- `-e SYMFONY__ENV__FOSUSER_REGISTRATION=...`(defaults to "true", enable or disable public user registration) - `-e SYMFONY__ENV__FOSUSER_REGISTRATION=...`(defaults to "false", enable or disable public user registration)
- `-e SYMFONY__ENV__FOSUSER_CONFIRMATION=...`(defaults to "true", enable or disable registration confirmation) - `-e SYMFONY__ENV__FOSUSER_CONFIRMATION=...`(defaults to "true", enable or disable registration confirmation)
- `-e SYMFONY__ENV__DOMAIN_NAME=...` defaults to "`https://your-wallabag-instance.wallabag.org`", the URL of your wallabag instance) - `-e SYMFONY__ENV__DOMAIN_NAME=...` defaults to "`https://your-wallabag-instance.wallabag.org`", the URL of your wallabag instance)
- `-e SYMFONY__ENV__REDIS_SCHEME=...` (defaults to "tcp", protocol to use to communicate with the target server (tcp, unix, or http)) - `-e SYMFONY__ENV__REDIS_SCHEME=...` (defaults to "tcp", protocol to use to communicate with the target server (tcp, unix, or http))
@@ -41,6 +41,7 @@ Default login is `wallabag:wallabag`.
- `-e SYMFONY__ENV__SENTRY_DSN=...` (defaults to "~", this is the data source name for sentry) - `-e SYMFONY__ENV__SENTRY_DSN=...` (defaults to "~", this is the data source name for sentry)
- `-e POPULATE_DATABASE=...`(defaults to "True". Does the DB has to be populated or is it an existing one) - `-e POPULATE_DATABASE=...`(defaults to "True". Does the DB has to be populated or is it an existing one)
- `-e SYMFONY__ENV__SERVER_NAME=...` (defaults to "Your wallabag instance". Specifies a user-friendly name for the 2FA issuer) - `-e SYMFONY__ENV__SERVER_NAME=...` (defaults to "Your wallabag instance". Specifies a user-friendly name for the 2FA issuer)
- `-e PHP_MEMORY_LIMIT=...` (allows you to change the PHP `memory_limit` value. defaults to 128M, and should be a number and unit, eg. 512K, 128M, 2G, or a number of bytes)
## SQLite ## SQLite
@@ -112,6 +113,7 @@ version: '3'
services: services:
wallabag: wallabag:
image: wallabag/wallabag image: wallabag/wallabag
restart: unless-stopped
environment: environment:
- MYSQL_ROOT_PASSWORD=wallaroot - MYSQL_ROOT_PASSWORD=wallaroot
- SYMFONY__ENV__DATABASE_DRIVER=pdo_mysql - SYMFONY__ENV__DATABASE_DRIVER=pdo_mysql
@@ -131,7 +133,7 @@ services:
volumes: volumes:
- /opt/wallabag/images:/var/www/wallabag/web/assets/images - /opt/wallabag/images:/var/www/wallabag/web/assets/images
healthcheck: healthcheck:
test: ["CMD", "wget" ,"--no-verbose", "--tries=1", "--spider", "http://localhost"] test: ["CMD", "wget" ,"--no-verbose", "--tries=1", "--spider", "http://localhost/api/info"]
interval: 1m interval: 1m
timeout: 3s timeout: 3s
depends_on: depends_on:
@@ -139,6 +141,7 @@ services:
- redis - redis
db: db:
image: mariadb image: mariadb
restart: unless-stopped
environment: environment:
- MYSQL_ROOT_PASSWORD=wallaroot - MYSQL_ROOT_PASSWORD=wallaroot
volumes: volumes:
@@ -149,6 +152,7 @@ services:
timeout: 3s timeout: 3s
redis: redis:
image: redis:alpine image: redis:alpine
restart: unless-stopped
healthcheck: healthcheck:
test: ["CMD", "redis-cli", "ping"] test: ["CMD", "redis-cli", "ping"]
interval: 20s interval: 20s

View File

@@ -23,9 +23,12 @@ install_wallabag() {
provisioner() { provisioner() {
SYMFONY__ENV__DATABASE_DRIVER=${SYMFONY__ENV__DATABASE_DRIVER:-pdo_sqlite} SYMFONY__ENV__DATABASE_DRIVER=${SYMFONY__ENV__DATABASE_DRIVER:-pdo_sqlite}
POPULATE_DATABASE=${POPULATE_DATABASE:-True} POPULATE_DATABASE=${POPULATE_DATABASE:-True}
SQLITE_DB_DIR="/var/www/wallabag/data/db"
SQLITE_DB_FILEPATH="$SQLITE_DB_DIR/wallabag.sqlite"
# Replace environment variables # Replace environment variables
envsubst < /etc/wallabag/parameters.template.yml > app/config/parameters.yml envsubst < /etc/wallabag/parameters.template.yml > app/config/parameters.yml
envsubst < /etc/wallabag/php-wallabag.template.ini > /etc/php81/conf.d/50_wallabag.ini
# Wait for external database # Wait for external database
if [ "$SYMFONY__ENV__DATABASE_DRIVER" = "pdo_mysql" ] || [ "$SYMFONY__ENV__DATABASE_DRIVER" = "pdo_pgsql" ] ; then if [ "$SYMFONY__ENV__DATABASE_DRIVER" = "pdo_mysql" ] || [ "$SYMFONY__ENV__DATABASE_DRIVER" = "pdo_pgsql" ] ; then
@@ -33,10 +36,17 @@ provisioner() {
fi fi
# Configure SQLite database # Configure SQLite database
SQLITE_FILE_SIZE=$(wc -c "/var/www/wallabag/data/db/wallabag.sqlite" | awk '{print $1}') if [ "$SYMFONY__ENV__DATABASE_DRIVER" = "pdo_sqlite" ]; then
if [ "$SYMFONY__ENV__DATABASE_DRIVER" = "pdo_sqlite" ] && ([ ! -f "/var/www/wallabag/data/db/wallabag.sqlite" ] || [ "$SQLITE_FILE_SIZE" = 0 ]) ; then # mkdir and chown are mandatory for local folder binding
echo "Configuring the SQLite database ..." if [ ! -f "$SQLITE_DB_FILEPATH" ]; then
install_wallabag mkdir -p "$SQLITE_DB_DIR"
chown nobody: "$SQLITE_DB_DIR"
fi
if [ ! -s "$SQLITE_DB_FILEPATH" ]; then
echo "Configuring the SQLite database ..."
install_wallabag
fi
fi fi
# Configure MySQL / MariaDB database # Configure MySQL / MariaDB database

View File

@@ -36,6 +36,7 @@ http {
server { server {
listen 80; listen 80;
listen [::0]:80;
server_name _; server_name _;
root /var/www/wallabag/web; root /var/www/wallabag/web;
@@ -57,6 +58,7 @@ http {
# for more information). # for more information).
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name; fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT $realpath_root; fastcgi_param DOCUMENT_ROOT $realpath_root;
fastcgi_read_timeout 300s;
# Prevents URIs that include the front controller. This will 404: # Prevents URIs that include the front controller. This will 404:
# http://domain.tld/app.php/some-path # http://domain.tld/app.php/some-path
# Remove the internal directive to allow URIs like this # Remove the internal directive to allow URIs like this

File diff suppressed because it is too large Load Diff

View File

@@ -5,7 +5,7 @@ parameters:
database_name: ${SYMFONY__ENV__DATABASE_NAME:-symfony} database_name: ${SYMFONY__ENV__DATABASE_NAME:-symfony}
database_user: ${SYMFONY__ENV__DATABASE_USER:-root} database_user: ${SYMFONY__ENV__DATABASE_USER:-root}
database_password: ${SYMFONY__ENV__DATABASE_PASSWORD:-~} database_password: ${SYMFONY__ENV__DATABASE_PASSWORD:-~}
database_path: "%kernel.root_dir%/../data/db/wallabag.sqlite" database_path: "%kernel.project_dir%/data/db/wallabag.sqlite"
database_table_prefix: ${SYMFONY__ENV__DATABASE_TABLE_PREFIX:-wallabag_} database_table_prefix: ${SYMFONY__ENV__DATABASE_TABLE_PREFIX:-wallabag_}
database_socket: null database_socket: null
database_charset: ${SYMFONY__ENV__DATABASE_CHARSET:-utf8} database_charset: ${SYMFONY__ENV__DATABASE_CHARSET:-utf8}
@@ -23,7 +23,7 @@ parameters:
twofactor_sender: ${SYMFONY__ENV__TWOFACTOR_SENDER:-no-reply@wallabag.org} twofactor_sender: ${SYMFONY__ENV__TWOFACTOR_SENDER:-no-reply@wallabag.org}
# fosuser stuff # fosuser stuff
fosuser_registration: ${SYMFONY__ENV__FOSUSER_REGISTRATION:-true} fosuser_registration: ${SYMFONY__ENV__FOSUSER_REGISTRATION:-false}
fosuser_confirmation: ${SYMFONY__ENV__FOSUSER_CONFIRMATION:-true} fosuser_confirmation: ${SYMFONY__ENV__FOSUSER_CONFIRMATION:-true}
# how long the access token should live in seconds for the API # how long the access token should live in seconds for the API

View File

@@ -0,0 +1 @@
memory_limit = ${PHP_MEMORY_LIMIT:-128M}

View File

@@ -52,7 +52,6 @@ def test_accessing_login_page(wallabag_service):
assert r.status_code == 200 assert r.status_code == 200
assert 'Log in' in r.text assert 'Log in' in r.text
assert 'Password' in r.text assert 'Password' in r.text
assert 'Register' in r.text
assert 'Username' in r.text assert 'Username' in r.text