diff --git a/nextcloud/README.md b/nextcloud/README.md
index c7a2e18..55a8824 100644
--- a/nextcloud/README.md
+++ b/nextcloud/README.md
@@ -1,105 +1,5 @@
# Nextcloud
-
-
-
- ╭── Composition \ Supported Archs ─── |
- amd64 |
- 386 |
- arm/v6 |
- arm/v7 |
- arm64 |
- ppc64le |
-
-
-
-
-
- Nextcloud
-
- :443/nextcloud
-
-
- |
-
- B B B B
- |
-
-
- mariadb
-
-
- redis
-
-
-
- nextcloud
-
-
-
- cron
-
- |
-
- 10.9.3
-
- 7.0.5
-
- 30.0.1-core
-
- 30.0.1-core
- |
-
- :heavy_check_mark:
- |
-
- :heavy_multiplication_x:
-
- :heavy_check_mark:
-
- :heavy_check_mark:
-
- :heavy_check_mark:
- |
-
- :heavy_multiplication_x:
-
- :heavy_check_mark:
-
- :heavy_check_mark:
-
- :heavy_check_mark:
- |
-
- :heavy_multiplication_x:
-
- :heavy_check_mark:
-
- :heavy_check_mark:
-
- :heavy_check_mark:
- |
-
- :heavy_check_mark:
- |
-
- :heavy_check_mark:
- |
-
-
-
-
-
-## Exposure
-
-- Ports:
- - `80` ; NOT exposed to host
-
-- Reverse Proxy
- - `traefik` ; dynamic routing via docker labels
- - Entrypoint: `SERVER_WAN_HTTPS_PORT` (see: [static.global.env](../static.global.env))
- - Subfolder: `/nextcloud`
-
## Bug Fixes
@@ -115,6 +15,7 @@ Implemented solution proposed in [comment-1213540687](https://github.com/nextclo
Implemented solution proposed in [comment-1308141561](https://github.com/nextcloud/docker/issues/1740#issuecomment-1308141561).
+
## Enhancements
### Security
@@ -127,7 +28,7 @@ Implemented solution proposed in [comment-1308141561](https://github.com/nextclo
### Usability
-1. Proper [carddav and caldav redirection](docker-compose.labels.yml#L8-L10)
+1. Proper [carddav and caldav redirection](docker-compose.labels.yml)
with subfolder in Traefik
2. Ability to edit crontab file (`data/nextcloud/crontabs/user`, generated after first run)
diff --git a/nextcloud/docker-compose.logging.yml b/nextcloud/docker-compose.logging.yml
index 2992f39..9b3539c 100644
--- a/nextcloud/docker-compose.logging.yml
+++ b/nextcloud/docker-compose.logging.yml
@@ -4,7 +4,7 @@ services:
options:
max-size: "1m"
max-file: "1"
- redis:
+ valkey:
logging:
options:
max-size: "1m"
diff --git a/nextcloud/docker-compose.pre_hook.sh b/nextcloud/docker-compose.pre_hook.sh
index a604524..97d4e4f 100755
--- a/nextcloud/docker-compose.pre_hook.sh
+++ b/nextcloud/docker-compose.pre_hook.sh
@@ -7,7 +7,7 @@ DATA_DIR="$SELF_DIR/data"
mkdir -p "$DATA_DIR/fulltextsearch/usr/share/elasticsearch/data" \
"$DATA_DIR/mariadb/var/lib/mysql" \
- "$DATA_DIR/redis/data" \
+ "$DATA_DIR/valkey/data" \
"$DATA_DIR/nextcloud/crontabs" \
"$DATA_DIR/nextcloud/data" \
"$DATA_DIR/nextcloud/var/www/html" \
diff --git a/nextcloud/docker-compose.yml b/nextcloud/docker-compose.yml
index 0bd6a81..95a00eb 100644
--- a/nextcloud/docker-compose.yml
+++ b/nextcloud/docker-compose.yml
@@ -38,13 +38,13 @@ services:
interval: 15s
start_period: 30s
- redis:
- hostname: redis
- image: redis:${REDIS_VERSION:?}
+ valkey:
+ hostname: valkey
+ image: valkey/valkey:${VALKEY_VERSION:?}
restart: unless-stopped
command: |-
- sh -c 'exec redis-server --requirepass "$${REDIS_HOST_PASSWORD}"'
+ sh -c 'exec valkey-server --requirepass "$${REDIS_HOST_PASSWORD}"'
security_opt:
# NOTE: Do NOT add a [space] before `true` below.
@@ -54,15 +54,15 @@ services:
networks:
- default
volumes:
- - ./data/redis/data:/data:rw
+ - ./data/valkey/data:/data:rw
env_file:
- - env/redis
+ - env/valkey
environment:
TZ: ${TZ:?}
healthcheck:
- test: "redis-cli ping"
+ test: '[ $$(valkey-cli --pass "$${REDIS_PASSWORD}" ping) = ''PONG'' ]'
interval: 5s
start_period: 10s
@@ -141,7 +141,7 @@ services:
depends_on:
mariadb:
condition: service_healthy
- redis:
+ valkey:
condition: service_healthy
fulltextsearch:
condition: service_healthy
@@ -164,7 +164,7 @@ services:
env_file:
- env/mariadb
- - env/redis
+ - env/valkey
- env/nextcloud
environment:
TZ: ${TZ:?}
@@ -202,7 +202,7 @@ services:
env_file:
- env/mariadb
- - env/redis
+ - env/valkey
- env/nextcloud
environment:
TZ: ${TZ:?}
diff --git a/nextcloud/env/nextcloud b/nextcloud/env/nextcloud
index d9fb469..2e31bde 100644
--- a/nextcloud/env/nextcloud
+++ b/nextcloud/env/nextcloud
@@ -1,5 +1,6 @@
MYSQL_HOST: 'mariadb'
-REDIS_HOST: 'redis'
+# FIXME: Nextcloud config scripts use this env var name.
+REDIS_HOST: 'valkey'
# FIXME: See https://github.com/nextcloud/docker/issues/1494
#APACHE_DISABLE_REWRITE_IP: 1
NEXTCLOUD_DATA_DIR: '/data'
diff --git a/nextcloud/env/redis b/nextcloud/env/redis
deleted file mode 100644
index ae12947..0000000
--- a/nextcloud/env/redis
+++ /dev/null
@@ -1 +0,0 @@
-REDIS_HOST_PASSWORD: 'nextcloud_password'
diff --git a/nextcloud/env/valkey b/nextcloud/env/valkey
new file mode 100644
index 0000000..0c16f1d
--- /dev/null
+++ b/nextcloud/env/valkey
@@ -0,0 +1,2 @@
+# FIXME: Nextcloud config scripts use this env var name.
+REDIS_HOST_PASSWORD: 'nextcloud_password'
diff --git a/nextcloud/static.env b/nextcloud/static.env
index f6c3c16..24418a0 100644
--- a/nextcloud/static.env
+++ b/nextcloud/static.env
@@ -2,5 +2,3 @@ NEXTCLOUD_FULL_TEXT_SEARCH_VERSION=20241216_102930
NEXTCLOUD_IMAGINARY_VERSION=20250114_092611
NEXTCLOUD_VERSION=30.0.5-core
NEXTCLOUD_BASE_PATH=nextcloud
-
-REDIS_VERSION=7.4.2