Compare commits

...

50 Commits

Author SHA1 Message Date
Adam 952884138f Merge pull request #521 from linuxserver/develop-version-spaces 2025-08-26 15:56:47 +01:00
thespad 5312dc251b Trim whitespace around version numbers 2025-08-26 13:48:15 +01:00
LinuxServer-CI 44443756a6 Bot Updating Package Versions 2025-08-22 19:36:24 +00:00
LinuxServer-CI b5a46482a3 Bot Updating Package Versions 2025-08-19 16:49:38 +00:00
LinuxServer-CI 7418e904c0 Bot Updating Package Versions 2025-08-19 11:51:55 +00:00
LinuxServer-CI 01903b9114 Bot Updating Package Versions 2025-08-12 11:52:14 +00:00
LinuxServer-CI 765dee0eaa Bot Updating Package Versions 2025-08-07 16:52:55 +00:00
LinuxServer-CI 37e8834977 Bot Updating Package Versions 2025-08-05 11:54:23 +00:00
LinuxServer-CI 34358e63bd Bot Updating Package Versions 2025-07-29 11:53:19 +00:00
LinuxServer-CI 3fd3d15029 Bot Updating Package Versions 2025-07-22 11:53:30 +00:00
LinuxServer-CI e20dd83d42 Bot Updating Package Versions 2025-07-15 08:28:19 +00:00
LinuxServer-CI 8b3054aeba Bot Updating Templated Files 2025-07-15 08:22:31 +00:00
Adam bc6105bb18 Merge pull request #510 from linuxserver/develop-3.22 2025-07-15 09:20:33 +01:00
thespad d2b6d946be Fix || breaking build failures 2025-07-10 19:38:21 +01:00
thespad 5421b5b766 Remove pecl-mcrypt 2025-07-10 17:32:57 +01:00
thespad ca08bf6356 Rebase to 3.22 2025-07-10 17:30:30 +01:00
LinuxServer-CI 946e3eb861 Bot Updating Package Versions 2025-07-03 15:47:44 +00:00
LinuxServer-CI 3a0a93dd24 Bot Updating Templated Files 2025-07-03 15:42:29 +00:00
LinuxServer-CI 9c7e18bb64 Bot Updating Templated Files 2025-07-03 15:40:28 +00:00
LinuxServer-CI 685743eab2 Bot Updating Templated Files 2025-06-10 11:48:52 +00:00
LinuxServer-CI 5ecde0417e Bot Updating Package Versions 2025-06-05 13:08:42 +00:00
LinuxServer-CI 29c502fc44 Bot Updating Package Versions 2025-05-26 23:56:22 +00:00
LinuxServer-CI 39f3c15512 Bot Updating Package Versions 2025-05-20 12:11:21 +00:00
LinuxServer-CI d6677cfc43 Bot Updating Templated Files 2025-05-20 11:48:41 +00:00
LinuxServer-CI 234610d94d Bot Updating Package Versions 2025-05-06 11:51:12 +00:00
LinuxServer-CI e00c11055e Bot Updating Package Versions 2025-04-22 11:53:55 +00:00
LinuxServer-CI ed98e24aa7 Bot Updating Package Versions 2025-04-15 17:41:40 +00:00
LinuxServer-CI 9a4d24cd18 Bot Updating Package Versions 2025-04-15 11:50:23 +00:00
LinuxServer-CI 8d8fda1690 Bot Updating Package Versions 2025-04-08 11:54:47 +00:00
LinuxServer-CI 18f8dd7ff6 Bot Updating Package Versions 2025-04-01 11:51:01 +00:00
LinuxServer-CI 6a16f357e0 Bot Updating Package Versions 2025-03-18 11:50:25 +00:00
LinuxServer-CI f8df570a5a Bot Updating Package Versions 2025-03-11 11:53:40 +00:00
LinuxServer-CI 595bb9bda2 Bot Updating Package Versions 2025-03-04 11:51:20 +00:00
LinuxServer-CI be1766be45 Bot Updating Package Versions 2025-02-25 11:50:59 +00:00
LinuxServer-CI 6ac0a2e866 Bot Updating Package Versions 2025-02-18 11:55:00 +00:00
LinuxServer-CI 4ed3edcf13 Bot Updating Package Versions 2025-02-13 19:51:55 +00:00
LinuxServer-CI f16963c975 Bot Updating Templated Files 2025-02-13 19:44:31 +00:00
Adam 5ebc250035 Merge pull request #492 from linuxserver/develop-3.21 2025-02-13 19:42:45 +00:00
LinuxServer-CI 38db952330 Bot Updating Package Versions 2025-02-13 15:44:40 +00:00
thespad 16844327e3 Fix migration permissions 2025-02-12 21:32:56 +00:00
thespad d3e62cc6d8 Rebase to 3.21 2025-02-12 21:20:46 +00:00
LinuxServer-CI 80f58400e5 Bot Updating Package Versions 2025-02-11 11:53:36 +00:00
LinuxServer-CI dff19a091c Bot Updating Templated Files 2025-02-11 11:48:30 +00:00
LinuxServer-CI 9755c51367 Bot Updating Package Versions 2025-02-06 16:46:50 +00:00
LinuxServer-CI fc9aa4801c Bot Updating Package Versions 2025-01-30 15:41:23 +00:00
LinuxServer-CI 75911cd39e Bot Updating Templated Files 2025-01-30 15:36:37 +00:00
LinuxServer-CI 8a9da03e3f Bot Updating Templated Files 2025-01-30 15:34:46 +00:00
LinuxServer-CI 0b3cc76eba Bot Updating Package Versions 2025-01-28 11:56:00 +00:00
LinuxServer-CI 5d67441e57 Bot Updating Package Versions 2025-01-23 10:43:48 +00:00
LinuxServer-CI 6f733cdbcf Bot Updating Package Versions 2025-01-21 17:38:04 +00:00
23 changed files with 810 additions and 544 deletions
Executable → Regular
View File
Executable → Regular
+1 -1
View File
@@ -6,7 +6,7 @@
* Read, and fill the Pull Request template * Read, and fill the Pull Request template
* If this is a fix for a typo (in code, documentation, or the README) please file an issue and let us sort it out. We do not need a PR * If this is a fix for a typo (in code, documentation, or the README) please file an issue and let us sort it out. We do not need a PR
* If the PR is addressing an existing issue include, closes #\<issue number>, in the body of the PR commit message * If the PR is addressing an existing issue include, closes #\<issue number>, in the body of the PR commit message
* If you want to discuss changes, you can also bring it up in [#dev-talk](https://discordapp.com/channels/354974912613449730/757585807061155840) in our [Discord server](https://discord.gg/YWrKVTn) * If you want to discuss changes, you can also bring it up in [#dev-talk](https://discordapp.com/channels/354974912613449730/757585807061155840) in our [Discord server](https://linuxserver.io/discord)
## Common files ## Common files
Executable → Regular
View File
+1 -1
View File
@@ -1,7 +1,7 @@
blank_issues_enabled: false blank_issues_enabled: false
contact_links: contact_links:
- name: Discord chat support - name: Discord chat support
url: https://discord.gg/YWrKVTn url: https://linuxserver.io/discord
about: Realtime support / chat with the community and the team. about: Realtime support / chat with the community and the team.
- name: Discourse discussion forum - name: Discourse discussion forum
View File
View File
+3
View File
@@ -8,6 +8,9 @@ on:
pull_request_review: pull_request_review:
types: [submitted,edited,dismissed] types: [submitted,edited,dismissed]
permissions:
contents: read
jobs: jobs:
manage-project: manage-project:
permissions: permissions:
+3
View File
@@ -4,6 +4,9 @@ on:
- cron: '35 2 * * *' - cron: '35 2 * * *'
workflow_dispatch: workflow_dispatch:
permissions:
contents: read
jobs: jobs:
stale: stale:
permissions: permissions:
+18 -7
View File
@@ -3,6 +3,9 @@ name: External Trigger Main
on: on:
workflow_dispatch: workflow_dispatch:
permissions:
contents: read
jobs: jobs:
external-trigger-develop: external-trigger-develop:
runs-on: ubuntu-latest runs-on: ubuntu-latest
@@ -15,7 +18,10 @@ jobs:
SKIP_EXTERNAL_TRIGGER: ${{ vars.SKIP_EXTERNAL_TRIGGER }} SKIP_EXTERNAL_TRIGGER: ${{ vars.SKIP_EXTERNAL_TRIGGER }}
run: | run: |
printf "# External trigger for docker-nextcloud\n\n" >> $GITHUB_STEP_SUMMARY printf "# External trigger for docker-nextcloud\n\n" >> $GITHUB_STEP_SUMMARY
if grep -q "^nextcloud_develop" <<< "${SKIP_EXTERNAL_TRIGGER}"; then if grep -q "^nextcloud_develop_" <<< "${SKIP_EXTERNAL_TRIGGER}"; then
echo "> [!NOTE]" >> $GITHUB_STEP_SUMMARY
echo "> Github organizational variable \`SKIP_EXTERNAL_TRIGGER\` contains \`nextcloud_develop_\`; will skip trigger if version matches." >> $GITHUB_STEP_SUMMARY
elif grep -q "^nextcloud_develop" <<< "${SKIP_EXTERNAL_TRIGGER}"; then
echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY
echo "> Github organizational variable \`SKIP_EXTERNAL_TRIGGER\` contains \`nextcloud_develop\`; skipping trigger." >> $GITHUB_STEP_SUMMARY echo "> Github organizational variable \`SKIP_EXTERNAL_TRIGGER\` contains \`nextcloud_develop\`; skipping trigger." >> $GITHUB_STEP_SUMMARY
exit 0 exit 0
@@ -25,6 +31,11 @@ jobs:
printf "\n## Retrieving external version\n\n" >> $GITHUB_STEP_SUMMARY printf "\n## Retrieving external version\n\n" >> $GITHUB_STEP_SUMMARY
EXT_RELEASE=$(curl -u ${{ secrets.CR_USER }}:${{ secrets.CR_PAT }} -sX GET https://api.github.com/repos/nextcloud/server/releases | jq -r '.[] | select(.prerelease == true) | .tag_name' | sed 's|^v||g' | sort -rV | head -1) EXT_RELEASE=$(curl -u ${{ secrets.CR_USER }}:${{ secrets.CR_PAT }} -sX GET https://api.github.com/repos/nextcloud/server/releases | jq -r '.[] | select(.prerelease == true) | .tag_name' | sed 's|^v||g' | sort -rV | head -1)
echo "Type is \`custom_version_command\`" >> $GITHUB_STEP_SUMMARY echo "Type is \`custom_version_command\`" >> $GITHUB_STEP_SUMMARY
if grep -q "^nextcloud_develop_${EXT_RELEASE}" <<< "${SKIP_EXTERNAL_TRIGGER}"; then
echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY
echo "> Github organizational variable \`SKIP_EXTERNAL_TRIGGER\` matches current external release; skipping trigger." >> $GITHUB_STEP_SUMMARY
exit 0
fi
if [ -z "${EXT_RELEASE}" ] || [ "${EXT_RELEASE}" == "null" ]; then if [ -z "${EXT_RELEASE}" ] || [ "${EXT_RELEASE}" == "null" ]; then
echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY
echo "> Can't retrieve external version, exiting" >> $GITHUB_STEP_SUMMARY echo "> Can't retrieve external version, exiting" >> $GITHUB_STEP_SUMMARY
@@ -35,8 +46,8 @@ jobs:
"username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }} "username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }}
exit 1 exit 1
fi fi
EXT_RELEASE=$(echo ${EXT_RELEASE} | sed 's/[~,%@+;:/]//g') EXT_RELEASE_SANITIZED=$(echo ${EXT_RELEASE} | sed 's/[~,%@+;:/]//g')
echo "External version: \`${EXT_RELEASE}\`" >> $GITHUB_STEP_SUMMARY echo "Sanitized external version: \`${EXT_RELEASE_SANITIZED}\`" >> $GITHUB_STEP_SUMMARY
echo "Retrieving last pushed version" >> $GITHUB_STEP_SUMMARY echo "Retrieving last pushed version" >> $GITHUB_STEP_SUMMARY
image="linuxserver/nextcloud" image="linuxserver/nextcloud"
tag="develop" tag="develop"
@@ -92,8 +103,8 @@ jobs:
exit 1 exit 1
fi fi
echo "Last pushed version: \`${IMAGE_VERSION}\`" >> $GITHUB_STEP_SUMMARY echo "Last pushed version: \`${IMAGE_VERSION}\`" >> $GITHUB_STEP_SUMMARY
if [ "${EXT_RELEASE}" == "${IMAGE_VERSION}" ]; then if [ "${EXT_RELEASE_SANITIZED}" == "${IMAGE_VERSION}" ]; then
echo "Version \`${EXT_RELEASE}\` already pushed, exiting" >> $GITHUB_STEP_SUMMARY echo "Sanitized version \`${EXT_RELEASE_SANITIZED}\` already pushed, exiting" >> $GITHUB_STEP_SUMMARY
exit 0 exit 0
elif [ $(curl -s https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-nextcloud/job/develop/lastBuild/api/json | jq -r '.building') == "true" ]; then elif [ $(curl -s https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-nextcloud/job/develop/lastBuild/api/json | jq -r '.building') == "true" ]; then
echo "New version \`${EXT_RELEASE}\` found; but there already seems to be an active build on Jenkins; exiting" >> $GITHUB_STEP_SUMMARY echo "New version \`${EXT_RELEASE}\` found; but there already seems to be an active build on Jenkins; exiting" >> $GITHUB_STEP_SUMMARY
@@ -108,7 +119,7 @@ jobs:
"username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }} "username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }}
else else
printf "\n## Trigger new build\n\n" >> $GITHUB_STEP_SUMMARY printf "\n## Trigger new build\n\n" >> $GITHUB_STEP_SUMMARY
echo "New version \`${EXT_RELEASE}\` found; old version was \`${IMAGE_VERSION}\`. Triggering new build" >> $GITHUB_STEP_SUMMARY echo "New sanitized version \`${EXT_RELEASE_SANITIZED}\` found; old version was \`${IMAGE_VERSION}\`. Triggering new build" >> $GITHUB_STEP_SUMMARY
if [[ "${artifacts_found}" == "true" ]]; then if [[ "${artifacts_found}" == "true" ]]; then
echo "All artifacts seem to be uploaded." >> $GITHUB_STEP_SUMMARY echo "All artifacts seem to be uploaded." >> $GITHUB_STEP_SUMMARY
fi fi
@@ -128,7 +139,7 @@ jobs:
--data-urlencode "description=GHA external trigger https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}" \ --data-urlencode "description=GHA external trigger https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}" \
--data-urlencode "Submit=Submit" --data-urlencode "Submit=Submit"
echo "**** Notifying Discord ****" echo "**** Notifying Discord ****"
TRIGGER_REASON="A version change was detected for nextcloud tag develop. Old version:${IMAGE_VERSION} New version:${EXT_RELEASE}" TRIGGER_REASON="A version change was detected for nextcloud tag develop. Old version:${IMAGE_VERSION} New version:${EXT_RELEASE_SANITIZED}"
curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://cdn.discordapp.com/avatars/354986384542662657/df91181b3f1cf0ef1592fbe18e0962d7.png","embeds": [{"color": 9802903, curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://cdn.discordapp.com/avatars/354986384542662657/df91181b3f1cf0ef1592fbe18e0962d7.png","embeds": [{"color": 9802903,
"description": "**Build Triggered** \n**Reason:** '"${TRIGGER_REASON}"' \n**Build URL:** '"${buildurl}display/redirect"' \n"}], "description": "**Build Triggered** \n**Reason:** '"${TRIGGER_REASON}"' \n**Build URL:** '"${buildurl}display/redirect"' \n"}],
"username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }} "username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }}
+3
View File
@@ -5,6 +5,9 @@ on:
- cron: '27 * * * *' - cron: '27 * * * *'
workflow_dispatch: workflow_dispatch:
permissions:
contents: read
jobs: jobs:
external-trigger-scheduler: external-trigger-scheduler:
runs-on: ubuntu-latest runs-on: ubuntu-latest
Executable → Regular
+6
View File
@@ -2,8 +2,14 @@ name: Greetings
on: [pull_request_target, issues] on: [pull_request_target, issues]
permissions:
contents: read
jobs: jobs:
greeting: greeting:
permissions:
issues: write
pull-requests: write
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/first-interaction@v1 - uses: actions/first-interaction@v1
+3
View File
@@ -5,6 +5,9 @@ on:
- cron: '42 11 * * 2' - cron: '42 11 * * 2'
workflow_dispatch: workflow_dispatch:
permissions:
contents: read
jobs: jobs:
package-trigger-scheduler: package-trigger-scheduler:
runs-on: ubuntu-latest runs-on: ubuntu-latest
View File
+33 -34
View File
@@ -1,6 +1,6 @@
# syntax=docker/dockerfile:1 # syntax=docker/dockerfile:1
FROM ghcr.io/linuxserver/baseimage-alpine-nginx:3.20 FROM ghcr.io/linuxserver/baseimage-alpine-nginx:3.22
# set version label # set version label
ARG BUILD_DATE ARG BUILD_DATE
@@ -19,44 +19,43 @@ RUN \
gnu-libiconv \ gnu-libiconv \
imagemagick \ imagemagick \
libxml2 \ libxml2 \
php83-apcu \ php84-apcu \
php83-bcmath \ php84-bcmath \
php83-bz2 \ php84-bz2 \
php83-dom \ php84-dom \
php83-exif \ php84-exif \
php83-ftp \ php84-ftp \
php83-gd \ php84-gd \
php83-gmp \ php84-gmp \
php83-imap \ php84-imap \
php83-intl \ php84-intl \
php83-ldap \ php84-ldap \
php83-opcache \ php84-opcache \
php83-pcntl \ php84-pcntl \
php83-pdo_mysql \ php84-pdo_mysql \
php83-pdo_pgsql \ php84-pdo_pgsql \
php83-pdo_sqlite \ php84-pdo_sqlite \
php83-pecl-imagick \ php84-pecl-imagick \
php83-pecl-mcrypt \ php84-pecl-memcached \
php83-pecl-memcached \ php84-pecl-smbclient \
php83-pecl-smbclient \ php84-pgsql \
php83-pgsql \ php84-posix \
php83-posix \ php84-redis \
php83-redis \ php84-sodium \
php83-sodium \ php84-sqlite3 \
php83-sqlite3 \ php84-sysvsem \
php83-sysvsem \ php84-xmlreader \
php83-xmlreader \
rsync \ rsync \
samba-client \ samba-client \
sudo && \ sudo && \
echo "**** configure php-fpm to pass env vars ****" && \ echo "**** configure php-fpm to pass env vars ****" && \
sed -E -i 's/^;?clear_env ?=.*$/clear_env = no/g' /etc/php83/php-fpm.d/www.conf && \ sed -E -i 's/^;?clear_env ?=.*$/clear_env = no/g' /etc/php84/php-fpm.d/www.conf && \
grep -qxF 'clear_env = no' /etc/php83/php-fpm.d/www.conf || echo 'clear_env = no' >> /etc/php83/php-fpm.d/www.conf && \ if ! grep -qxF 'clear_env = no' /etc/php84/php-fpm.d/www.conf; then echo 'clear_env = no' >> /etc/php84/php-fpm.d/www.conf; fi && \
echo "env[PATH] = /usr/local/bin:/usr/bin:/bin" >> /etc/php83/php-fpm.conf && \ echo "env[PATH] = /usr/local/bin:/usr/bin:/bin" >> /etc/php84/php-fpm.conf && \
echo "**** configure php for nextcloud ****" && \ echo "**** configure php for nextcloud ****" && \
{ \ { \
echo 'apc.enable_cli=1'; \ echo 'apc.enable_cli=1'; \
} >> /etc/php83/conf.d/apcu.ini && \ } >> /etc/php84/conf.d/apcu.ini && \
{ \ { \
echo 'opcache.enable=1'; \ echo 'opcache.enable=1'; \
echo 'opcache.interned_strings_buffer=32'; \ echo 'opcache.interned_strings_buffer=32'; \
@@ -66,7 +65,7 @@ RUN \
echo 'opcache.revalidate_freq=60'; \ echo 'opcache.revalidate_freq=60'; \
echo 'opcache.jit=1255'; \ echo 'opcache.jit=1255'; \
echo 'opcache.jit_buffer_size=128M'; \ echo 'opcache.jit_buffer_size=128M'; \
} >> "/etc/php83/conf.d/00_opcache.ini" && \ } >> "/etc/php84/conf.d/00_opcache.ini" && \
{ \ { \
echo 'memory_limit=-1'; \ echo 'memory_limit=-1'; \
echo 'upload_max_filesize=100G'; \ echo 'upload_max_filesize=100G'; \
@@ -75,7 +74,7 @@ RUN \
echo 'max_execution_time=3600'; \ echo 'max_execution_time=3600'; \
echo 'output_buffering=0'; \ echo 'output_buffering=0'; \
echo 'always_populate_raw_post_data=-1'; \ echo 'always_populate_raw_post_data=-1'; \
} >> "/etc/php83/conf.d/nextcloud.ini" && \ } >> "/etc/php84/conf.d/nextcloud.ini" && \
echo "**** install nextcloud ****" && \ echo "**** install nextcloud ****" && \
mkdir -p \ mkdir -p \
/app/www/src/ && \ /app/www/src/ && \
+33 -34
View File
@@ -1,6 +1,6 @@
# syntax=docker/dockerfile:1 # syntax=docker/dockerfile:1
FROM ghcr.io/linuxserver/baseimage-alpine-nginx:arm64v8-3.20 FROM ghcr.io/linuxserver/baseimage-alpine-nginx:arm64v8-3.22
# set version label # set version label
ARG BUILD_DATE ARG BUILD_DATE
@@ -19,44 +19,43 @@ RUN \
gnu-libiconv \ gnu-libiconv \
imagemagick \ imagemagick \
libxml2 \ libxml2 \
php83-apcu \ php84-apcu \
php83-bcmath \ php84-bcmath \
php83-bz2 \ php84-bz2 \
php83-dom \ php84-dom \
php83-exif \ php84-exif \
php83-ftp \ php84-ftp \
php83-gd \ php84-gd \
php83-gmp \ php84-gmp \
php83-imap \ php84-imap \
php83-intl \ php84-intl \
php83-ldap \ php84-ldap \
php83-opcache \ php84-opcache \
php83-pcntl \ php84-pcntl \
php83-pdo_mysql \ php84-pdo_mysql \
php83-pdo_pgsql \ php84-pdo_pgsql \
php83-pdo_sqlite \ php84-pdo_sqlite \
php83-pecl-imagick \ php84-pecl-imagick \
php83-pecl-mcrypt \ php84-pecl-memcached \
php83-pecl-memcached \ php84-pecl-smbclient \
php83-pecl-smbclient \ php84-pgsql \
php83-pgsql \ php84-posix \
php83-posix \ php84-redis \
php83-redis \ php84-sodium \
php83-sodium \ php84-sqlite3 \
php83-sqlite3 \ php84-sysvsem \
php83-sysvsem \ php84-xmlreader \
php83-xmlreader \
rsync \ rsync \
samba-client \ samba-client \
sudo && \ sudo && \
echo "**** configure php-fpm to pass env vars ****" && \ echo "**** configure php-fpm to pass env vars ****" && \
sed -E -i 's/^;?clear_env ?=.*$/clear_env = no/g' /etc/php83/php-fpm.d/www.conf && \ sed -E -i 's/^;?clear_env ?=.*$/clear_env = no/g' /etc/php84/php-fpm.d/www.conf && \
grep -qxF 'clear_env = no' /etc/php83/php-fpm.d/www.conf || echo 'clear_env = no' >> /etc/php83/php-fpm.d/www.conf && \ if ! grep -qxF 'clear_env = no' /etc/php84/php-fpm.d/www.conf; then echo 'clear_env = no' >> /etc/php84/php-fpm.d/www.conf; fi && \
echo "env[PATH] = /usr/local/bin:/usr/bin:/bin" >> /etc/php83/php-fpm.conf && \ echo "env[PATH] = /usr/local/bin:/usr/bin:/bin" >> /etc/php84/php-fpm.conf && \
echo "**** configure php for nextcloud ****" && \ echo "**** configure php for nextcloud ****" && \
{ \ { \
echo 'apc.enable_cli=1'; \ echo 'apc.enable_cli=1'; \
} >> /etc/php83/conf.d/apcu.ini && \ } >> /etc/php84/conf.d/apcu.ini && \
{ \ { \
echo 'opcache.enable=1'; \ echo 'opcache.enable=1'; \
echo 'opcache.interned_strings_buffer=32'; \ echo 'opcache.interned_strings_buffer=32'; \
@@ -66,7 +65,7 @@ RUN \
echo 'opcache.revalidate_freq=60'; \ echo 'opcache.revalidate_freq=60'; \
echo 'opcache.jit=1255'; \ echo 'opcache.jit=1255'; \
echo 'opcache.jit_buffer_size=128M'; \ echo 'opcache.jit_buffer_size=128M'; \
} >> "/etc/php83/conf.d/00_opcache.ini" && \ } >> "/etc/php84/conf.d/00_opcache.ini" && \
{ \ { \
echo 'memory_limit=-1'; \ echo 'memory_limit=-1'; \
echo 'upload_max_filesize=100G'; \ echo 'upload_max_filesize=100G'; \
@@ -75,7 +74,7 @@ RUN \
echo 'max_execution_time=3600'; \ echo 'max_execution_time=3600'; \
echo 'output_buffering=0'; \ echo 'output_buffering=0'; \
echo 'always_populate_raw_post_data=-1'; \ echo 'always_populate_raw_post_data=-1'; \
} >> "/etc/php83/conf.d/nextcloud.ini" && \ } >> "/etc/php84/conf.d/nextcloud.ini" && \
echo "**** install nextcloud ****" && \ echo "**** install nextcloud ****" && \
mkdir -p \ mkdir -p \
/app/www/src/ && \ /app/www/src/ && \
Vendored
+37 -9
View File
@@ -56,11 +56,23 @@ pipeline {
steps{ steps{
echo "Running on node: ${NODE_NAME}" echo "Running on node: ${NODE_NAME}"
sh '''#! /bin/bash sh '''#! /bin/bash
containers=$(docker ps -aq) echo "Pruning builder"
docker builder prune -f --builder container || :
containers=$(docker ps -q)
if [[ -n "${containers}" ]]; then if [[ -n "${containers}" ]]; then
docker stop ${containers} BUILDX_CONTAINER_ID=$(docker ps -qf 'name=buildx_buildkit')
for container in ${containers}; do
if [[ "${container}" == "${BUILDX_CONTAINER_ID}" ]]; then
echo "skipping buildx container in docker stop"
else
echo "Stopping container ${container}"
docker stop ${container}
fi
done
fi fi
docker system prune -af --volumes || : ''' docker system prune -f --volumes || :
docker image prune -af || :
'''
script{ script{
env.EXIT_STATUS = '' env.EXIT_STATUS = ''
env.LS_RELEASE = sh( env.LS_RELEASE = sh(
@@ -82,7 +94,11 @@ pipeline {
env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.DOCKERHUB_IMAGE + '/tags/' env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.DOCKERHUB_IMAGE + '/tags/'
env.PULL_REQUEST = env.CHANGE_ID env.PULL_REQUEST = env.CHANGE_ID
env.TEMPLATED_FILES = 'Jenkinsfile README.md LICENSE .editorconfig ./.github/CONTRIBUTING.md ./.github/FUNDING.yml ./.github/ISSUE_TEMPLATE/config.yml ./.github/ISSUE_TEMPLATE/issue.bug.yml ./.github/ISSUE_TEMPLATE/issue.feature.yml ./.github/PULL_REQUEST_TEMPLATE.md ./.github/workflows/external_trigger_scheduler.yml ./.github/workflows/greetings.yml ./.github/workflows/package_trigger_scheduler.yml ./.github/workflows/call_issue_pr_tracker.yml ./.github/workflows/call_issues_cron.yml ./.github/workflows/permissions.yml ./.github/workflows/external_trigger.yml' env.TEMPLATED_FILES = 'Jenkinsfile README.md LICENSE .editorconfig ./.github/CONTRIBUTING.md ./.github/FUNDING.yml ./.github/ISSUE_TEMPLATE/config.yml ./.github/ISSUE_TEMPLATE/issue.bug.yml ./.github/ISSUE_TEMPLATE/issue.feature.yml ./.github/PULL_REQUEST_TEMPLATE.md ./.github/workflows/external_trigger_scheduler.yml ./.github/workflows/greetings.yml ./.github/workflows/package_trigger_scheduler.yml ./.github/workflows/call_issue_pr_tracker.yml ./.github/workflows/call_issues_cron.yml ./.github/workflows/permissions.yml ./.github/workflows/external_trigger.yml'
if ( env.SYFT_IMAGE_TAG == null ) {
env.SYFT_IMAGE_TAG = 'latest'
}
} }
echo "Using syft image tag ${SYFT_IMAGE_TAG}"
sh '''#! /bin/bash sh '''#! /bin/bash
echo "The default github branch detected as ${GH_DEFAULT_BRANCH}" ''' echo "The default github branch detected as ${GH_DEFAULT_BRANCH}" '''
script{ script{
@@ -741,7 +757,8 @@ pipeline {
if [[ -n "${containers}" ]]; then if [[ -n "${containers}" ]]; then
docker stop ${containers} docker stop ${containers}
fi fi
docker system prune -af --volumes || : docker system prune -f --volumes || :
docker image prune -af || :
''' '''
} }
} }
@@ -767,7 +784,7 @@ pipeline {
docker run --rm \ docker run --rm \
-v /var/run/docker.sock:/var/run/docker.sock:ro \ -v /var/run/docker.sock:/var/run/docker.sock:ro \
-v ${TEMPDIR}:/tmp \ -v ${TEMPDIR}:/tmp \
ghcr.io/anchore/syft:latest \ ghcr.io/anchore/syft:${SYFT_IMAGE_TAG} \
${LOCAL_CONTAINER} -o table=/tmp/package_versions.txt ${LOCAL_CONTAINER} -o table=/tmp/package_versions.txt
NEW_PACKAGE_TAG=$(md5sum ${TEMPDIR}/package_versions.txt | cut -c1-8 ) NEW_PACKAGE_TAG=$(md5sum ${TEMPDIR}/package_versions.txt | cut -c1-8 )
echo "Package tag sha from current packages in buit container is ${NEW_PACKAGE_TAG} comparing to old ${PACKAGE_TAG} from github" echo "Package tag sha from current packages in buit container is ${NEW_PACKAGE_TAG} comparing to old ${PACKAGE_TAG} from github"
@@ -877,6 +894,7 @@ pipeline {
-e WEB_AUTH=\"${CI_AUTH}\" \ -e WEB_AUTH=\"${CI_AUTH}\" \
-e WEB_PATH=\"${CI_WEBPATH}\" \ -e WEB_PATH=\"${CI_WEBPATH}\" \
-e NODE_NAME=\"${NODE_NAME}\" \ -e NODE_NAME=\"${NODE_NAME}\" \
-e SYFT_IMAGE_TAG=\"${CI_SYFT_IMAGE_TAG:-${SYFT_IMAGE_TAG}}\" \
-t ghcr.io/linuxserver/ci:latest \ -t ghcr.io/linuxserver/ci:latest \
python3 test_build.py''' python3 test_build.py'''
} }
@@ -1152,12 +1170,22 @@ EOF
} }
cleanup { cleanup {
sh '''#! /bin/bash sh '''#! /bin/bash
echo "Performing docker system prune!!" echo "Pruning builder!!"
containers=$(docker ps -aq) docker builder prune -f --builder container || :
containers=$(docker ps -q)
if [[ -n "${containers}" ]]; then if [[ -n "${containers}" ]]; then
docker stop ${containers} BUILDX_CONTAINER_ID=$(docker ps -qf 'name=buildx_buildkit')
for container in ${containers}; do
if [[ "${container}" == "${BUILDX_CONTAINER_ID}" ]]; then
echo "skipping buildx container in docker stop"
else
echo "Stopping container ${container}"
docker stop ${container}
fi
done
fi fi
docker system prune -af --volumes || : docker system prune -f --volumes || :
docker image prune -af || :
''' '''
cleanWs() cleanWs()
} }
Executable → Regular
View File
+41 -5
View File
@@ -3,9 +3,8 @@
[![linuxserver.io](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/linuxserver_medium.png)](https://linuxserver.io) [![linuxserver.io](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/linuxserver_medium.png)](https://linuxserver.io)
[![Blog](https://img.shields.io/static/v1.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=linuxserver.io&message=Blog)](https://blog.linuxserver.io "all the things you can do with our containers including How-To guides, opinions and much more!") [![Blog](https://img.shields.io/static/v1.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=linuxserver.io&message=Blog)](https://blog.linuxserver.io "all the things you can do with our containers including How-To guides, opinions and much more!")
[![Discord](https://img.shields.io/discord/354974912613449730.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=Discord&logo=discord)](https://discord.gg/YWrKVTn "realtime support / chat with the community and the team.") [![Discord](https://img.shields.io/discord/354974912613449730.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=Discord&logo=discord)](https://linuxserver.io/discord "realtime support / chat with the community and the team.")
[![Discourse](https://img.shields.io/discourse/https/discourse.linuxserver.io/topics.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&logo=discourse)](https://discourse.linuxserver.io "post on our community forum.") [![Discourse](https://img.shields.io/discourse/https/discourse.linuxserver.io/topics.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&logo=discourse)](https://discourse.linuxserver.io "post on our community forum.")
[![Fleet](https://img.shields.io/static/v1.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=linuxserver.io&message=Fleet)](https://fleet.linuxserver.io "an online web interface which displays all of our maintained images.")
[![GitHub](https://img.shields.io/static/v1.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=linuxserver.io&message=GitHub&logo=github)](https://github.com/linuxserver "view the source for all of our repositories.") [![GitHub](https://img.shields.io/static/v1.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=linuxserver.io&message=GitHub&logo=github)](https://github.com/linuxserver "view the source for all of our repositories.")
[![Open Collective](https://img.shields.io/opencollective/all/linuxserver.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=Supporters&logo=open%20collective)](https://opencollective.com/linuxserver "please consider helping us by either donating or contributing to our budget") [![Open Collective](https://img.shields.io/opencollective/all/linuxserver.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=Supporters&logo=open%20collective)](https://opencollective.com/linuxserver "please consider helping us by either donating or contributing to our budget")
@@ -20,9 +19,8 @@ The [LinuxServer.io](https://linuxserver.io) team brings you another container r
Find us at: Find us at:
* [Blog](https://blog.linuxserver.io) - all the things you can do with our containers including How-To guides, opinions and much more! * [Blog](https://blog.linuxserver.io) - all the things you can do with our containers including How-To guides, opinions and much more!
* [Discord](https://discord.gg/YWrKVTn) - realtime support / chat with the community and the team. * [Discord](https://linuxserver.io/discord) - realtime support / chat with the community and the team.
* [Discourse](https://discourse.linuxserver.io) - post on our community forum. * [Discourse](https://discourse.linuxserver.io) - post on our community forum.
* [Fleet](https://fleet.linuxserver.io) - an online web interface which displays all of our maintained images.
* [GitHub](https://github.com/linuxserver) - view the source for all of our repositories. * [GitHub](https://github.com/linuxserver) - view the source for all of our repositories.
* [Open Collective](https://opencollective.com/linuxserver) - please consider helping us by either donating or contributing to our budget * [Open Collective](https://opencollective.com/linuxserver) - please consider helping us by either donating or contributing to our budget
@@ -57,7 +55,6 @@ The architectures supported by this image are:
| :----: | :----: | ---- | | :----: | :----: | ---- |
| x86-64 | ✅ | amd64-\<version tag\> | | x86-64 | ✅ | amd64-\<version tag\> |
| arm64 | ✅ | arm64v8-\<version tag\> | | arm64 | ✅ | arm64v8-\<version tag\> |
| armhf | ❌ | |
## Version Tags ## Version Tags
@@ -67,11 +64,14 @@ This image provides various versions that are available via tags. Please read th
| :----: | :----: |--- | | :----: | :----: |--- |
| latest | ✅ | Stable Nextcloud releases | | latest | ✅ | Stable Nextcloud releases |
| develop | ✅ | Beta Nextcloud pre-releases *only* | | develop | ✅ | Beta Nextcloud pre-releases *only* |
| previous | ✅ | Nextcloud releases from the previous major version |
## Application Setup ## Application Setup
Access the webui at `https://<your-ip>:443`, for more information check out [Nextcloud](https://nextcloud.com/). Access the webui at `https://<your-ip>:443`, for more information check out [Nextcloud](https://nextcloud.com/).
Note: `occ` should be run without prepending with `sudo -u abc php` or `sudo -u www-data php` ie; `docker exec -it nextcloud occ maintenance:mode --off`
### Updating Nextcloud ### Updating Nextcloud
Updating Nextcloud is done by pulling the new image, and recreating the container with it. Updating Nextcloud is done by pulling the new image, and recreating the container with it.
@@ -86,6 +86,34 @@ Nextcloud's built-in collaborative editing packages (Collabora/CODE and OnlyOffi
If (auto) installed, those built-in packages may cause instability and should be removed. If (auto) installed, those built-in packages may cause instability and should be removed.
### HEIC Image Previews
In order to enable HEIC image preview generation you will need to add the following to your `config.php` file in your `config/www/nextcloud/config' directory;
```
'enable_previews' => true,
'enabledPreviewProviders' =>
array (
'OC\Preview\PNG',
'OC\Preview\JPEG',
'OC\Preview\GIF',
'OC\Preview\BMP',
'OC\Preview\XBitmap',
'OC\Preview\MP3',
'OC\Preview\TXT',
'OC\Preview\MarkDown',
'OC\Preview\OpenDocument',
'OC\Preview\Krita',
'OC\Preview\HEIC',
),
```
You may need to log out and back in for the changes to come in to effect.
This fix was sourced from [Nextcloud Documentation](https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/config_sample_php_parameters.html#enabledpreviewproviders)
Nextcloud state that HEIC preview is disabled by default due to performance or privacy concerns, so enable this at your own risk.
### Custom App Directories ### Custom App Directories
If you are [using custom app directories](https://docs.nextcloud.com/server/latest/admin_manual/apps_management.html#using-custom-app-directories) you will need to make the custom folder(s) you are using available to the web server. The recommended way to do this with our container is to add a volume. Ex: If you are [using custom app directories](https://docs.nextcloud.com/server/latest/admin_manual/apps_management.html#using-custom-app-directories) you will need to make the custom folder(s) you are using available to the web server. The recommended way to do this with our container is to add a volume. Ex:
@@ -319,8 +347,16 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
## Versions ## Versions
* **10.07.25:** - Rebase to Alpine 3.22.
* **12.02.25:** - Rebase to Alpine 3.21.
* **09.01.25:** - Fix uploading large files. Existing users should update their nginx confs. * **09.01.25:** - Fix uploading large files. Existing users should update their nginx confs.
* **09.07.24:** - Add `previous` tag for n-1 releases.
* **24.06.24:** - Rebase to Alpine 3.20. Existing users should update their nginx confs to avoid http2 deprecation warnings. * **24.06.24:** - Rebase to Alpine 3.20. Existing users should update their nginx confs to avoid http2 deprecation warnings.
* **19.05.24:** - Added util-linux package required for taskset.
* **10.04.24:** - Added imagemagick-pdf.
* **05.04.24:** - Added imagemagick-heic. Manual update to `config.php` required - see above.
* **02.04.24:** - Existing users should update: site-confs/default.conf - Add support for the Client Push (notify_push) plugin and the [new mod](https://github.com/linuxserver/docker-mods/tree/nextcloud-notify-push).
* **22.03.24:** - Add imagemagick-svg module.
* **06.03.24:** - Rebase to Alpine 3.19 with php 8.3. * **06.03.24:** - Rebase to Alpine 3.19 with php 8.3.
* **02.01.24:** - Existing users should update: site-confs/default.conf - Cleanup default site conf. * **02.01.24:** - Existing users should update: site-confs/default.conf - Cleanup default site conf.
* **22.12.23:** - Site default conf updating to include mime.types for js and mjs and update location to include more file types. * **22.12.23:** - Site default conf updating to include mime.types for js and mjs and update location to include more file types.
+557 -422
View File
@@ -1,422 +1,557 @@
NAME VERSION TYPE NAME VERSION TYPE
Hidden Input 1, 0, 0, 0 dotnet Hidden Input 1, 0, 0, 0 binary
Process Wrapper 1.0.0.0 dotnet (+1 duplicate) Process Wrapper 0.0.0.0 binary (+1 duplicate)
activity 4.0.0 npm acl-libs 2.3.2-r1 apk
alpine-baselayout 3.6.5-r0 apk activity 5.0.0-dev.0 npm
alpine-baselayout-data 3.6.5-r0 apk alpine-baselayout 3.7.0-r0 apk
alpine-keys 2.4-r1 apk alpine-baselayout-data 3.7.0-r0 apk
alpine-release 3.20.5-r0 apk alpine-keys 2.5-r0 apk
alsa-lib 1.2.11-r0 apk alpine-release 3.22.1-r0 apk
amphp/amp v2.6.4 php-composer (+1 duplicate) alsa-lib 1.2.14-r0 apk
amphp/byte-stream v1.8.2 php-composer (+1 duplicate) amphp/amp v2.6.4 php-composer (+1 duplicate)
amphp/parallel v1.4.3 php-composer amphp/byte-stream v1.8.2 php-composer (+1 duplicate)
amphp/parser v1.1.1 php-composer amphp/parallel v1.4.4 php-composer
amphp/process v1.1.7 php-composer amphp/parser v1.1.1 php-composer
amphp/serialization v1.0.0 php-composer amphp/process v1.1.9 php-composer
amphp/sync v1.4.2 php-composer amphp/serialization v1.0.0 php-composer
aom-libs 3.9.1-r0 apk amphp/sync v1.4.2 php-composer
apache2-utils 2.4.62-r0 apk andrewdalpino/okbloomer 1.0.0 php-composer
apk-tools 2.14.4-r1 apk anstream 0.6.5 rust-crate
app_api 1.0.0 npm anstyle 1.0.4 rust-crate
apr 1.7.5-r0 apk anstyle-parse 0.2.3 rust-crate
apr-util 1.6.3-r1 apk anstyle-query 1.0.2 rust-crate
argon2-libs 20190702-r5 apk anyhow 1.0.79 rust-crate
aws/aws-crt-php v1.2.7 php-composer anyhow 1.0.98 rust-crate
aws/aws-sdk-php 3.324.13 php-composer aom-libs 3.12.1-r0 apk
bamarni/composer-bin-plugin 1.8.2 php-composer (+1 duplicate) apache2-utils 2.4.65-r0 apk
bantu/ini-get-wrapper v1.0.1 php-composer apk-tools 2.14.9-r2 apk
bash 5.2.26-r0 apk app_api 1.0.0 npm
brick/math 0.12.1 php-composer apr 1.7.5-r0 apk
brotli-libs 1.1.0-r2 apk apr-util 1.6.3-r1 apk
bruteforcesettings 4.0.0 npm arg_enum_proc_macro 0.3.4 rust-crate
busybox 1.36.1-r29 apk argon2-libs 20190702-r5 apk
busybox-binsh 1.36.1-r29 apk arrayvec 0.7.4 rust-crate
c-ares 1.33.1-r0 apk av-metrics 0.9.1 rust-crate
c-client 2007f-r15 apk av1-grain 0.2.3 rust-crate
ca-certificates 20241121-r1 apk aws/aws-crt-php v1.2.7 php-composer
ca-certificates-bundle 20241121-r1 apk aws/aws-sdk-php 3.349.3 php-composer
catatonit 0.2.0-r0 apk bamarni/composer-bin-plugin 1.8.2 php-composer
christian-riesen/base32 1.6.0 php-composer bantu/ini-get-wrapper v1.0.1 php-composer
cjson 1.7.18-r0 apk bash 5.2.37-r0 apk
composer 2.8.4 binary bitflags 2.4.1 rust-crate
composer/pcre 3.3.1 php-composer bitstream-io 2.2.0 rust-crate
composer/semver 3.4.2 php-composer bitstream-io 2.6.0 rust-crate
composer/xdebug-handler 3.0.5 php-composer bitvec 1.0.1 rust-crate
coreutils 9.5-r2 apk bitvec_helpers 3.1.6 rust-crate
coreutils-env 9.5-r2 apk brick/math 0.12.1 php-composer
coreutils-fmt 9.5-r2 apk brotli-libs 1.1.0-r2 apk
coreutils-sha512sum 9.5-r2 apk bruteforcesettings 5.0.0-dev.0 npm
curl 8.11.1-r0 apk busybox 1.37.0-r19 apk
cweagans/composer-patches 1.7.3 php-composer busybox-binsh 1.37.0-r19 apk
dbus-libs 1.14.10-r1 apk c-ares 1.34.5-r0 apk
deepdiver/zipstreamer v2.0.3 php-composer c-client 2007f-r15 apk
deepdiver1975/tarstreamer v2.1.0 php-composer ca-certificates 20250619-r0 apk
dnoegel/php-xdg-base-dir v0.1.1 php-composer ca-certificates-bundle 20250619-r0 apk
doctrine/cache 2.2.0 php-composer catatonit 0.2.1-r0 apk
doctrine/dbal 3.9.1 php-composer cfg-if 1.0.0 rust-crate
doctrine/deprecations 1.1.3 php-composer (+1 duplicate) christian-riesen/base32 1.6.0 php-composer
doctrine/event-manager 1.2.0 php-composer christophwurst/nextcloud_testing v1.0.1 php-composer
doctrine/lexer 3.0.1 php-composer cjson 1.7.18-r1 apk
egulias/email-validator 4.0.2 php-composer clap 4.4.14 rust-crate
felixfbecker/advanced-json-rpc v3.2.1 php-composer clap_builder 4.4.14 rust-crate
felixfbecker/language-server-protocol v1.5.2 php-composer clap_complete 4.4.6 rust-crate
ffmpeg 6.1.1-r8 apk clap_derive 4.4.7 rust-crate
ffmpeg-libavcodec 6.1.1-r8 apk clap_lex 0.6.0 rust-crate
ffmpeg-libavdevice 6.1.1-r8 apk colorchoice 1.0.0 rust-crate
ffmpeg-libavfilter 6.1.1-r8 apk composer 2.8.11 binary
ffmpeg-libavformat 6.1.1-r8 apk composer/pcre 3.3.1 php-composer
ffmpeg-libavutil 6.1.1-r8 apk composer/semver 3.4.2 php-composer
ffmpeg-libpostproc 6.1.1-r8 apk composer/xdebug-handler 3.0.5 php-composer
ffmpeg-libswresample 6.1.1-r8 apk console 0.15.8 rust-crate
ffmpeg-libswscale 6.1.1-r8 apk coreutils 9.7-r1 apk
fftw-double-libs 3.3.10-r5 apk coreutils-env 9.7-r1 apk
fidry/cpu-core-counter 1.2.0 php-composer coreutils-fmt 9.7-r1 apk
files_downloadlimit 4.0.0 npm coreutils-sha512sum 9.7-r1 apk
files_pdfviewer 4.0.0 npm crc 3.3.0 rust-crate
findutils 4.9.0-r5 apk crc-catalog 2.4.0 rust-crate
firstrunwizard 4.0.0 npm crossbeam 0.8.4 rust-crate
fontconfig 2.15.0-r1 apk crossbeam-channel 0.5.11 rust-crate
freetype 2.13.2-r0 apk crossbeam-deque 0.8.5 rust-crate
fribidi 1.0.15-r0 apk crossbeam-epoch 0.9.18 rust-crate
fusonic/opengraph v2.3.0 php-composer crossbeam-queue 0.3.11 rust-crate
gdbm 1.23-r1 apk crossbeam-utils 0.8.19 rust-crate
giflib 5.2.2-r0 apk curl 8.14.1-r1 apk
giggsey/libphonenumber-for-php-lite 8.13.48 php-composer cweagans/composer-patches 1.7.3 php-composer
git 2.45.3-r0 apk dbus-libs 1.16.2-r1 apk
git-init-template 2.45.3-r0 apk deepdiver/zipstreamer v2.0.3 php-composer
glib 2.80.5-r0 apk deepdiver1975/tarstreamer v2.1.0 php-composer
glslang-libs 1.3.261.1-r0 apk dnoegel/php-xdg-base-dir v0.1.1 php-composer
gmp 6.3.0-r1 apk doctrine/cache 2.2.0 php-composer
gnu-libiconv 1.17-r2 apk doctrine/dbal 3.9.1 php-composer
gnu-libiconv-libs 1.17-r2 apk doctrine/deprecations 1.1.3 php-composer
gnutls 3.8.5-r0 apk doctrine/deprecations 1.1.5 php-composer
graphite2 1.3.14-r6 apk doctrine/event-manager 1.2.0 php-composer
guzzlehttp/guzzle 7.9.2 php-composer doctrine/lexer 3.0.1 php-composer
guzzlehttp/promises 2.0.4 php-composer dolby_vision 3.3.1 rust-crate
guzzlehttp/psr7 2.7.0 php-composer egulias/email-validator 4.0.4 php-composer
guzzlehttp/uri-template v1.0.3 php-composer either 1.9.0 rust-crate
harfbuzz 8.5.0-r0 apk errno 0.3.8 rust-crate
hexogen/kdtree v0.2.6 php-composer felixfbecker/advanced-json-rpc v3.2.1 php-composer
hwdata-pci 0.382-r0 apk felixfbecker/language-server-protocol v1.5.2 php-composer
icewind/searchdav v3.1.0 php-composer fern 0.6.2 rust-crate
icewind/smb v3.5.4 php-composer ffmpeg 6.1.2-r2 apk
icewind/streams v0.7.7 php-composer (+1 duplicate) ffmpeg-libavcodec 6.1.2-r2 apk
icu-data-en 74.2-r0 apk ffmpeg-libavdevice 6.1.2-r2 apk
icu-libs 74.2-r0 apk ffmpeg-libavfilter 6.1.2-r2 apk
imagemagick 7.1.1.32-r2 apk ffmpeg-libavformat 6.1.2-r2 apk
imagemagick-jpeg 7.1.1.32-r2 apk ffmpeg-libavutil 6.1.2-r2 apk
imagemagick-jxl 7.1.1.32-r2 apk ffmpeg-libpostproc 6.1.2-r2 apk
imagemagick-libs 7.1.1.32-r2 apk ffmpeg-libswresample 6.1.2-r2 apk
imagemagick-webp 7.1.1.32-r2 apk ffmpeg-libswscale 6.1.2-r2 apk
imath 3.1.12-r0 apk fftw-double-libs 3.3.10-r6 apk
jansson 2.14-r4 apk fidry/cpu-core-counter 1.2.0 php-composer
jq 1.7.1-r0 apk files_downloadlimit 5.0.0-dev.0 npm
justinrainbow/json-schema 5.3.0 php-composer files_pdfviewer 5.0.0-dev.0 npm
kornrunner/blurhash v1.2.2 php-composer findutils 4.10.0-r0 apk
lame-libs 3.100-r5 apk firstrunwizard 5.0.0-dev.0 npm
laravel/serializable-closure v1.3.5 php-composer fontconfig 2.15.0-r3 apk
lcms2 2.16-r0 apk freetype 2.13.3-r0 apk
lcobucci/clock 3.0.0 php-composer fribidi 1.0.16-r1 apk
ldb 2.8.2-r0 apk funty 2.0.0 rust-crate
league/flysystem 2.5.0 php-composer fusonic/opengraph v3.0.0 php-composer
league/mime-type-detection 1.15.0 php-composer gdbm 1.24-r0 apk
libSvtAv1Enc 2.0.0-r1 apk getrandom 0.2.12 rust-crate
libacl 2.3.2-r0 apk giflib 5.2.2-r1 apk
libarchive 3.7.7-r0 apk giggsey/libphonenumber-for-php-lite 9.0.9 php-composer
libass 0.17.2-r0 apk git 2.49.1-r0 apk
libasyncns 0.8-r3 apk git-init-template 2.49.1-r0 apk
libattr 2.5.2-r0 apk glib 2.84.4-r0 apk
libauth-samba 4.19.9-r0 apk glslang-libs 1.4.309.0-r0 apk
libavif 1.0.4-r0 apk gmp 6.3.0-r3 apk
libblkid 2.40.1-r1 apk gnu-libiconv 1.17-r2 apk
libbluray 1.3.4-r1 apk gnu-libiconv-libs 1.17-r2 apk
libbsd 0.12.2-r0 apk gnutls 3.8.8-r0 apk
libbz2 1.0.8-r6 apk graphite2 1.3.14-r6 apk
libcap2 2.70-r0 apk guzzlehttp/guzzle 7.9.3 php-composer
libcrypto3 3.3.2-r1 apk guzzlehttp/promises 2.2.0 php-composer
libcurl 8.11.1-r0 apk guzzlehttp/psr7 2.7.1 php-composer
libdav1d 1.4.2-r0 apk guzzlehttp/uri-template v1.0.4 php-composer
libdovi 3.3.0-r0 apk harfbuzz 11.2.1-r0 apk
libdrm 2.4.120-r0 apk heck 0.4.1 rust-crate
libeconf 0.6.3-r0 apk hexogen/kdtree v0.2.6 php-composer
libedit 20240517.3.1-r0 apk hwdata-pci 0.395-r0 apk
libevent 2.1.12-r7 apk icewind/searchdav v3.2.0 php-composer
libexpat 2.6.4-r0 apk icewind/smb v3.7.0 php-composer
libffi 3.4.6-r0 apk icewind/streams v0.7.8 php-composer
libflac 1.4.3-r1 apk icu-data-en 76.1-r1 apk
libformw 6.4_p20240420-r2 apk icu-libs 76.1-r1 apk
libgcc 13.2.1_git20240309-r0 apk imagemagick 7.1.2.0-r0 apk
libgomp 13.2.1_git20240309-r0 apk imagemagick-jpeg 7.1.2.0-r0 apk
libhwy 1.0.7-r0 apk imagemagick-jxl 7.1.2.0-r0 apk
libice 1.1.1-r6 apk imagemagick-libs 7.1.2.0-r0 apk
libidn2 2.3.7-r0 apk imagemagick-openexr 7.1.2.0-r0 apk
libintl 0.22.5-r0 apk imagemagick-webp 7.1.2.0-r0 apk
libjpeg-turbo 3.0.3-r0 apk imath 3.1.12-r0 apk
libjxl 0.10.2-r0 apk interpolate_name 0.2.4 rust-crate
libldap 2.6.8-r0 apk itertools 0.10.5 rust-crate
libltdl 2.4.7-r3 apk itertools 0.12.0 rust-crate
libmcrypt 2.5.8-r10 apk ivf 0.1.3 rust-crate
libmd 1.1.0-r0 apk jansson 2.14.1-r0 apk
libmemcached-libs 1.1.4-r1 apk jq 1.8.0-r0 apk
libmount 2.40.1-r1 apk justinrainbow/json-schema 6.4.2 php-composer
libncursesw 6.4_p20240420-r2 apk kornrunner/blurhash v1.2.2 php-composer
libogg 1.3.5-r5 apk lab 0.11.0 rust-crate
libopenmpt 0.7.7-r0 apk lame-libs 3.100-r5 apk
libpanelw 6.4_p20240420-r2 apk laravel/serializable-closure v2.0.4 php-composer
libpciaccess 0.18.1-r0 apk lazy_static 1.4.0 rust-crate
libplacebo 6.338.2-r1 apk lcms2 2.16-r0 apk
libpng 1.6.44-r0 apk lcobucci/clock 3.0.0 php-composer
libpq 16.6-r0 apk ldb 4.21.4-r4 apk
libproc2 4.0.4-r0 apk libSvtAv1Enc 2.3.0-r0 apk
libpsl 0.21.5-r1 apk libapk2 2.14.9-r2 apk
libpulse 17.0-r0 apk libarchive 3.8.1-r0 apk
librist 0.2.10-r1 apk libass 0.17.3-r0 apk
libsasl 2.1.28-r6 apk libasyncns 0.8-r4 apk
libsharpyuv 1.3.2-r0 apk libattr 2.5.2-r2 apk
libsm 1.2.4-r4 apk libauth-samba 4.21.4-r4 apk
libsmbclient 4.19.9-r0 apk libavif 1.3.0-r0 apk
libsndfile 1.2.2-r1 apk libblkid 2.41-r9 apk
libsodium 1.0.19-r0 apk libbluray 1.3.4-r1 apk
libsrt 1.5.3-r0 apk libbsd 0.12.2-r0 apk
libssh 0.10.6-r0 apk libbz2 1.0.8-r6 apk
libssl3 3.3.2-r1 apk libc 0.2.155 rust-crate
libstdc++ 13.2.1_git20240309-r0 apk libc 0.2.172 rust-crate
libtasn1 4.19.0-r2 apk libcap2 2.76-r0 apk
libtheora 1.1.1-r18 apk libcrypto3 3.5.2-r0 apk
libunibreak 6.1-r0 apk libcurl 8.14.1-r1 apk
libunistring 1.2-r0 apk libdav1d 1.5.1-r0 apk
libuuid 2.40.1-r1 apk libdeflate 1.23-r0 apk
libva 2.21.0-r0 apk libdovi 3.3.1-r1 apk
libvdpau 1.5-r3 apk libdrm 2.4.124-r0 apk
libvorbis 1.3.7-r2 apk libeconf 0.6.3-r0 apk
libvpx 1.14.1-r0 apk libedit 20250104.3.1-r1 apk
libwbclient 4.19.9-r0 apk libevent 2.1.12-r8 apk
libwebp 1.3.2-r0 apk libexpat 2.7.1-r0 apk
libwebpdemux 1.3.2-r0 apk libffi 3.4.8-r0 apk
libwebpmux 1.3.2-r0 apk libflac 1.4.3-r1 apk
libx11 1.8.9-r1 apk libformw 6.5_p20250503-r0 apk
libxau 1.0.11-r4 apk libgcc 14.2.0-r6 apk
libxcb 1.16.1-r0 apk libgomp 14.2.0-r6 apk
libxdmcp 1.1.5-r1 apk libhwy 1.0.7-r1 apk
libxext 1.3.6-r2 apk libice 1.1.2-r0 apk
libxfixes 6.0.1-r4 apk libidn2 2.3.7-r0 apk
libxml2 2.12.7-r0 apk libintl 0.24.1-r0 apk
libxpm 3.5.17-r0 apk libjpeg-turbo 3.1.0-r0 apk
libxt 1.3.0-r5 apk libjxl 0.10.3-r2 apk
libxxhash 0.8.2-r2 apk libldap 2.6.8-r0 apk
libzip 1.10.1-r0 apk libltdl 2.5.4-r1 apk
libzmq 4.3.5-r2 apk libmd 1.1.0-r0 apk
lilv-libs 0.24.24-r1 apk libmemcached-libs 1.1.4-r1 apk
linux-pam 1.6.0-r0 apk libmount 2.41-r9 apk
lmdb 0.9.32-r0 apk libncursesw 6.5_p20250503-r0 apk
logreader 4.0.0 npm libogg 1.3.5-r5 apk
logrotate 3.21.0-r1 apk libopenmpt 0.7.15-r0 apk
lz4-libs 1.9.4-r5 apk libpanelw 6.5_p20250503-r0 apk
masterminds/html5 2.9.0 php-composer libpciaccess 0.18.1-r0 apk
mbedtls 3.6.2-r0 apk libplacebo 6.338.2-r3 apk
mexitek/phpcolors v1.0.4 php-composer libpng 1.6.47-r0 apk
microsoft/azure-storage-blob 1.5.4 php-composer libpq 17.6-r0 apk
microsoft/azure-storage-common 1.5.2 php-composer libproc2 4.0.4-r3 apk
mlocati/ip-lib 1.18.1 php-composer libpsl 0.21.5-r3 apk
mpg123-libs 1.32.8-r0 apk libpulse 17.0-r5 apk
mtdowling/jmespath.php 2.8.0 php-composer librist 0.2.10-r1 apk
musl 1.2.5-r0 apk libsasl 2.1.28-r8 apk
musl-utils 1.2.5-r0 apk libsharpyuv 1.5.0-r0 apk
nano 8.0-r0 apk libsm 1.2.5-r0 apk
ncurses-terminfo-base 6.4_p20240420-r2 apk libsmbclient 4.21.4-r4 apk
netcat-openbsd 1.226-r0 apk libsndfile 1.2.2-r2 apk
netresearch/jsonmapper v4.5.0 php-composer libsodium 1.0.20-r0 apk
nettle 3.9.1-r0 apk libsrt 1.5.3-r1 apk
nextcloud 1.0.0 npm libssh 0.11.2-r0 apk
nextcloud/coding-standard v1.2.1 php-composer libssl3 3.5.2-r0 apk
nextcloud/lognormalizer v1.0.0 php-composer libstdc++ 14.2.0-r6 apk
nextcloud/ocp dev-master php-composer libtasn1 4.20.0-r0 apk
nghttp2-libs 1.62.1-r0 apk libtheora 1.1.1-r18 apk
nginx 1.26.2-r0 apk libunibreak 6.1-r0 apk
nikic/php-parser v4.19.2 php-composer libunistring 1.3-r0 apk
notifications 4.0.0 npm libuuid 2.41-r9 apk
numactl 2.0.18-r0 apk libva 2.22.0-r1 apk
onevpl-libs 2023.3.1-r2 apk libvdpau 1.5-r4 apk
oniguruma 6.9.9-r0 apk libvorbis 1.3.7-r2 apk
openexr-libiex 3.1.13-r1 apk libvpx 1.15.0-r0 apk
openexr-libilmthread 3.1.13-r1 apk libwbclient 4.21.4-r4 apk
openexr-libopenexr 3.1.13-r1 apk libwebp 1.5.0-r0 apk
openssl 3.3.2-r1 apk libwebpdemux 1.5.0-r0 apk
opus 1.5.2-r0 apk libwebpmux 1.5.0-r0 apk
orc 0.4.40-r0 apk libx11 1.8.11-r0 apk
p11-kit 0.25.3-r0 apk libxau 1.0.12-r0 apk
paragonie/constant_time_encoding v2.6.3 php-composer libxcb 1.17.0-r0 apk
password_policy 3.0.0 npm libxdmcp 1.1.5-r1 apk
pcre 8.45-r3 apk libxext 1.3.6-r2 apk
pcre2 10.43-r0 apk libxfixes 6.0.1-r4 apk
pear/archive_tar 1.5.0 php-composer libxml2 2.13.8-r0 apk
pear/console_getopt v1.4.3 php-composer libxpm 3.5.17-r0 apk
pear/pear-core-minimal v1.10.15 php-composer libxt 1.3.1-r0 apk
pear/pear_exception v1.0.2 php-composer libxxhash 0.8.3-r0 apk
photos 4.0.0 npm libyuv 0.0.1887.20251502-r1 apk
php-cs-fixer/shim v3.62.0 php-composer libzip 1.11.4-r0 apk
php-http/guzzle7-adapter 1.0.0 php-composer libzmq 4.3.5-r2 apk
php-http/httplug 2.2.0 php-composer lilv-libs 0.24.26-r0 apk
php-http/promise 1.1.0 php-composer linux-pam 1.7.0-r4 apk
php-opencloud/openstack v3.10.0 php-composer linux-raw-sys 0.4.12 rust-crate
php83 8.3.15-r0 apk lmdb 0.9.33-r0 apk
php83-bcmath 8.3.15-r0 apk log 0.4.20 rust-crate
php83-bz2 8.3.15-r0 apk logreader 5.0.0-dev.0 npm
php83-common 8.3.15-r0 apk logrotate 3.21.0-r1 apk
php83-ctype 8.3.15-r0 apk lz4-libs 1.10.0-r0 apk
php83-curl 8.3.15-r0 apk marc-mabe/php-enum v4.7.1 php-composer
php83-dom 8.3.15-r0 apk masterminds/html5 2.9.0 php-composer
php83-exif 8.3.15-r0 apk maybe-rayon 0.1.1 rust-crate
php83-fileinfo 8.3.15-r0 apk mbedtls 3.6.4-r0 apk
php83-fpm 8.3.15-r0 apk memchr 2.7.1 rust-crate
php83-ftp 8.3.15-r0 apk mexitek/phpcolors v1.0.4 php-composer
php83-gd 8.3.15-r0 apk microsoft/azure-storage-blob 1.5.4 php-composer
php83-gmp 8.3.15-r0 apk microsoft/azure-storage-common 1.5.2 php-composer
php83-iconv 8.3.15-r0 apk minimal-lexical 0.2.1 rust-crate
php83-imap 8.3.15-r0 apk mlocati/ip-lib 1.20.0 php-composer
php83-intl 8.3.15-r0 apk mpg123-libs 1.32.10-r0 apk
php83-ldap 8.3.15-r0 apk mtdowling/jmespath.php 2.8.0 php-composer
php83-mbstring 8.3.15-r0 apk musl 1.2.5-r10 apk
php83-mysqlnd 8.3.15-r0 apk musl-utils 1.2.5-r10 apk
php83-opcache 8.3.15-r0 apk myclabs/deep-copy 1.13.4 php-composer
php83-openssl 8.3.15-r0 apk nano 8.4-r0 apk
php83-pcntl 8.3.15-r0 apk ncurses-terminfo-base 6.5_p20250503-r0 apk
php83-pdo 8.3.15-r0 apk netcat-openbsd 1.229.1-r0 apk
php83-pdo_mysql 8.3.15-r0 apk netresearch/jsonmapper v4.5.0 php-composer
php83-pdo_pgsql 8.3.15-r0 apk nettle 3.10.1-r0 apk
php83-pdo_sqlite 8.3.15-r0 apk new_debug_unreachable 1.0.4 rust-crate
php83-pecl-apcu 5.1.23-r0 apk nextcloud 1.0.0 npm
php83-pecl-igbinary 3.2.15-r0 apk nextcloud/coding-standard v1.2.1 php-composer
php83-pecl-imagick 3.7.0-r0 apk nextcloud/lognormalizer v1.0.0 php-composer
php83-pecl-mcrypt 1.0.7-r0 apk nextcloud/ocp dev-master php-composer
php83-pecl-memcached 3.3.0-r0 apk nghttp2-libs 1.65.0-r0 apk
php83-pecl-msgpack 2.2.0-r2 apk nginx 1.28.0-r3 apk
php83-pecl-redis 6.1.0-r0 apk nikic/php-parser v4.19.2 php-composer
php83-pecl-smbclient 1.1.1-r0 apk nikic/php-parser v5.5.0 php-composer
php83-pgsql 8.3.15-r0 apk nom 7.1.3 rust-crate
php83-phar 8.3.15-r0 apk noop_proc_macro 0.3.0 rust-crate
php83-posix 8.3.15-r0 apk notifications 5.0.0-dev.0 npm
php83-session 8.3.15-r0 apk num-bigint 0.4.4 rust-crate
php83-simplexml 8.3.15-r0 apk num-derive 0.4.1 rust-crate
php83-sockets 8.3.15-r0 apk num-integer 0.1.45 rust-crate
php83-sodium 8.3.15-r0 apk num-rational 0.4.1 rust-crate
php83-sqlite3 8.3.15-r0 apk num-traits 0.2.17 rust-crate
php83-sysvsem 8.3.15-r0 apk numactl 2.0.18-r0 apk
php83-xml 8.3.15-r0 apk once_cell 1.19.0 rust-crate
php83-xmlreader 8.3.15-r0 apk onevpl-libs 2023.3.1-r2 apk
php83-xmlwriter 8.3.15-r0 apk oniguruma 6.9.10-r0 apk
php83-zip 8.3.15-r0 apk openexr-libiex 3.3.2-r0 apk
phpdocumentor/reflection-common 2.2.0 php-composer openexr-libilmthread 3.3.2-r0 apk
phpdocumentor/reflection-docblock 5.4.1 php-composer openexr-libopenexr 3.3.2-r0 apk
phpdocumentor/type-resolver 1.8.2 php-composer openexr-libopenexrcore 3.3.2-r0 apk
phpseclib/phpseclib 2.0.47 php-composer openssl 3.5.2-r0 apk
phpstan/phpdoc-parser 1.30.1 php-composer opus 1.5.2-r1 apk
pimple/pimple v3.5.0 php-composer orc 0.4.40-r1 apk
popt 1.19-r3 apk p11-kit 0.25.5-r2 apk
privacy 3.0.0 npm paragonie/constant_time_encoding v2.6.3 php-composer
procps-ng 4.0.4-r0 apk password_policy 4.0.0-dev.0 npm
psr/cache 3.0.0 php-composer paste 1.0.14 rust-crate
psr/clock 1.0.0 php-composer (+1 duplicate) pcre2 10.43-r1 apk
psr/container 2.0.2 php-composer (+1 duplicate) pear/archive_tar 1.5.0 php-composer
psr/event-dispatcher 1.0.0 php-composer (+1 duplicate) pear/console_getopt v1.4.3 php-composer
psr/http-client 1.0.3 php-composer pear/pear-core-minimal v1.10.16 php-composer
psr/http-factory 1.1.0 php-composer pear/pear_exception v1.0.2 php-composer
psr/http-message 1.1 php-composer phar-io/manifest 2.0.4 php-composer
psr/log 1.1.4 php-composer (+1 duplicate) phar-io/version 3.2.1 php-composer
psr/log 3.0.2 php-composer photos 5.0.0-dev.1 npm
punic/punic 3.8.1 php-composer php-cs-fixer/shim v3.62.0 php-composer
ralouphie/getallheaders 3.0.3 php-composer php-http/guzzle7-adapter 1.1.0 php-composer
rav1e-libs 0.7.1-r0 apk php-http/httplug 2.4.1 php-composer
readline 8.2.10-r0 apk php-http/promise 1.3.1 php-composer
recommendations 4.0.0 npm php-opencloud/openstack v3.14.0 php-composer
related_resources 2.0.0 npm php-webdriver/webdriver 1.15.2 php-composer
rsync 3.4.0-r0 apk php84 8.4.11-r0 apk
rubix/ml dev-chore/bump-flysystem-v2.1.1 php-composer php84-bcmath 8.4.11-r0 apk
rubix/tensor 2.2.3 php-composer php84-bz2 8.4.11-r0 apk
rullzer/easytotp v0.1.4 php-composer php84-common 8.4.11-r0 apk
sabre/dav 4.7.0 php-composer php84-ctype 8.4.11-r0 apk
sabre/event 5.1.7 php-composer php84-curl 8.4.11-r0 apk
sabre/http 5.1.12 php-composer php84-dom 8.4.11-r0 apk
sabre/uri 2.3.4 php-composer php84-exif 8.4.11-r0 apk
sabre/vobject 4.5.6 php-composer php84-fileinfo 8.4.11-r0 apk
sabre/xml 2.2.11 php-composer php84-fpm 8.4.11-r0 apk
samba-client 4.19.9-r0 apk php84-ftp 8.4.11-r0 apk
samba-client-libs 4.19.9-r0 apk php84-gd 8.4.11-r0 apk
samba-common 4.19.9-r0 apk php84-gmp 8.4.11-r0 apk
samba-libs 4.19.9-r0 apk php84-iconv 8.4.11-r0 apk
samba-util-libs 4.19.9-r0 apk php84-intl 8.4.11-r0 apk
scanelf 1.3.7-r2 apk php84-ldap 8.4.11-r0 apk
scssphp/scssphp v1.12.1 php-composer php84-mbstring 8.4.11-r0 apk
sdl2 2.28.5-r1 apk php84-mysqlnd 8.4.11-r0 apk
sebastian/diff 5.1.1 php-composer php84-opcache 8.4.11-r0 apk
serd-libs 0.32.2-r0 apk php84-openssl 8.4.11-r0 apk
shaderc 2024.0-r0 apk php84-pcntl 8.4.11-r0 apk
shadow 4.15.1-r0 apk php84-pdo 8.4.11-r0 apk
skalibs 2.14.1.1-r0 apk php84-pdo_mysql 8.4.11-r0 apk
sord-libs 0.16.16-r0 apk php84-pdo_pgsql 8.4.11-r0 apk
soxr 0.1.3-r7 apk php84-pdo_sqlite 8.4.11-r0 apk
spatie/array-to-xml 3.3.0 php-composer php84-pecl-apcu 5.1.26-r0 apk
speexdsp 1.2.1-r2 apk php84-pecl-igbinary 3.2.16-r1 apk
spirv-tools 1.3.261.1-r0 apk php84-pecl-imagick 3.8.0-r1 apk
spomky-labs/cbor-php 3.0.4 php-composer php84-pecl-imap 1.0.3-r0 apk
spomky-labs/pki-framework 1.2.1 php-composer php84-pecl-memcached 3.3.0-r0 apk
sqlite-libs 3.45.3-r1 apk php84-pecl-msgpack 3.0.0-r0 apk
sratom 0.6.16-r0 apk php84-pecl-redis 6.2.0-r0 apk
ssl_client 1.36.1-r29 apk php84-pecl-smbclient 1.2.0_pre-r0 apk
stecman/symfony-console-completion v0.13.0 php-composer php84-pgsql 8.4.11-r0 apk
sudo 1.9.15_p5-r0 apk php84-phar 8.4.11-r0 apk
support 3.0.0 npm php84-posix 8.4.11-r0 apk
symfony/console v6.4.11 php-composer php84-session 8.4.11-r0 apk
symfony/console v6.4.12 php-composer php84-simplexml 8.4.11-r0 apk
symfony/css-selector v6.4.3 php-composer php84-sockets 8.4.11-r0 apk
symfony/deprecation-contracts v3.5.0 php-composer (+1 duplicate) php84-sodium 8.4.11-r0 apk
symfony/dom-crawler v6.4.4 php-composer php84-sqlite3 8.4.11-r0 apk
symfony/event-dispatcher v6.4.8 php-composer php84-sysvsem 8.4.11-r0 apk
symfony/event-dispatcher-contracts v3.5.0 php-composer php84-xml 8.4.11-r0 apk
symfony/filesystem v6.4.9 php-composer php84-xmlreader 8.4.11-r0 apk
symfony/http-foundation v6.4.12 php-composer php84-xmlwriter 8.4.11-r0 apk
symfony/mailer v6.4.12 php-composer php84-zip 8.4.11-r0 apk
symfony/mime v6.4.12 php-composer phpdocumentor/reflection-common 2.2.0 php-composer
symfony/polyfill-ctype v1.31.0 php-composer (+1 duplicate) phpdocumentor/reflection-docblock 5.4.1 php-composer
symfony/polyfill-intl-grapheme v1.31.0 php-composer (+1 duplicate) phpdocumentor/type-resolver 1.8.2 php-composer
symfony/polyfill-intl-idn v1.31.0 php-composer phpseclib/phpseclib 2.0.47 php-composer
symfony/polyfill-intl-normalizer v1.31.0 php-composer (+1 duplicate) phpstan/phpdoc-parser 1.30.1 php-composer
symfony/polyfill-mbstring v1.31.0 php-composer (+2 duplicates) phpunit/php-code-coverage 10.1.16 php-composer
symfony/polyfill-php73 v1.30.0 php-composer phpunit/php-file-iterator 4.1.0 php-composer
symfony/polyfill-php80 v1.31.0 php-composer (+1 duplicate) phpunit/php-invoker 4.0.0 php-composer
symfony/polyfill-php83 v1.31.0 php-composer phpunit/php-text-template 3.0.1 php-composer
symfony/polyfill-uuid v1.29.0 php-composer phpunit/php-timer 6.0.0 php-composer
symfony/process v6.4.12 php-composer phpunit/phpunit 10.5.53 php-composer
symfony/routing v6.4.12 php-composer pimple/pimple v3.5.0 php-composer
symfony/service-contracts v3.5.0 php-composer (+1 duplicate) popt 1.19-r4 apk
symfony/string v6.4.11 php-composer ppv-lite86 0.2.17 rust-crate
symfony/string v6.4.13 php-composer privacy 4.0.0-dev.0 npm
symfony/translation v6.4.4 php-composer proc-macro2 1.0.76 rust-crate
symfony/translation-contracts v3.4.2 php-composer procps-ng 4.0.4-r3 apk
symfony/uid v6.4.3 php-composer profiling 1.0.13 rust-crate
talloc 2.4.2-r1 apk profiling-procmacros 1.0.13 rust-crate
tdb-libs 1.4.9-r1 apk psr/cache 3.0.0 php-composer
tevent 0.16.1-r0 apk psr/clock 1.0.0 php-composer (+1 duplicate)
text 5.0.0 npm psr/container 2.0.2 php-composer (+1 duplicate)
twofactor_nextcloud_notification 5.0.0 npm psr/event-dispatcher 1.0.0 php-composer (+1 duplicate)
twofactor_totp 13.0.0-dev.0 npm psr/http-client 1.0.3 php-composer
tzdata 2024b-r0 apk psr/http-factory 1.1.0 php-composer
utmps-libs 0.1.2.2-r1 apk psr/http-message 2.0 php-composer
v4l-utils-libs 1.24.1-r1 apk psr/log 1.1.4 php-composer
vidstab 1.1.1-r0 apk psr/log 3.0.2 php-composer (+1 duplicate)
viewer 4.0.0 npm punic/punic 3.8.1 php-composer
vimeo/psalm 5.26.1 php-composer quote 1.0.35 rust-crate
vulkan-loader 1.3.261.1-r0 apk radium 0.7.0 rust-crate
wapmorgan/mp3info 0.1.0 php-composer ralouphie/getallheaders 3.0.3 php-composer
wayland-libs-client 1.22.0-r4 apk rand 0.8.5 rust-crate
web-auth/cose-lib 4.3.0 php-composer rand_chacha 0.3.1 rust-crate
web-auth/webauthn-lib 4.9.1 php-composer rand_core 0.6.4 rust-crate
webmozart/assert 1.11.0 php-composer rav1e 0.7.1 rust-crate
x264-libs 0.164_git20231001-r0 apk rav1e-libs 0.7.1-r0 apk
x265-libs 3.6-r0 apk rayon 1.8.0 rust-crate
xvidcore 1.3.7-r2 apk rayon-core 1.12.0 rust-crate
xz-libs 5.6.2-r0 apk readline 8.2.13-r1 apk
zimg 3.0.5-r2 apk recommendations 5.0.0-dev.0 npm
zix-libs 0.4.2-r0 apk related_resources 3.0.0-dev.0 npm
zlib 1.3.1-r1 apk rsync 3.4.1-r0 apk
zstd-libs 1.5.6-r0 apk rubix/ml 2.5.2 php-composer
rubix/tensor 3.0.5 php-composer
rullzer/easytotp v0.1.4 php-composer
rustix 0.38.28 rust-crate
sabre/dav 4.7.0 php-composer
sabre/event 5.1.7 php-composer
sabre/http 5.1.12 php-composer
sabre/uri 2.3.4 php-composer
sabre/vobject 4.5.6 php-composer
sabre/xml 2.2.11 php-composer
samba-client 4.21.4-r4 apk
samba-client-libs 4.21.4-r4 apk
samba-common 4.21.4-r4 apk
samba-libs 4.21.4-r4 apk
samba-util-libs 4.21.4-r4 apk
scan_fmt 0.2.6 rust-crate
scanelf 1.3.8-r1 apk
sdl2-compat 2.32.56-r0 apk
sdl3 3.2.16-r0 apk
sebastian/cli-parser 2.0.1 php-composer
sebastian/code-unit 2.0.0 php-composer
sebastian/code-unit-reverse-lookup 3.0.0 php-composer
sebastian/comparator 5.0.3 php-composer
sebastian/complexity 3.2.0 php-composer
sebastian/diff 5.1.1 php-composer (+1 duplicate)
sebastian/environment 6.1.0 php-composer
sebastian/exporter 5.1.2 php-composer
sebastian/global-state 6.0.2 php-composer
sebastian/lines-of-code 2.0.2 php-composer
sebastian/object-enumerator 5.0.0 php-composer
sebastian/object-reflector 3.0.0 php-composer
sebastian/recursion-context 5.0.1 php-composer
sebastian/type 4.0.0 php-composer
sebastian/version 4.0.1 php-composer
serd-libs 0.32.4-r0 apk
shaderc 2024.4-r0 apk
shadow 4.17.3-r0 apk
signal-hook 0.3.17 rust-crate
signal-hook-registry 1.4.1 rust-crate
simd_helpers 0.1.0 rust-crate
skalibs-libs 2.14.4.0-r0 apk
sord-libs 0.16.18-r0 apk
soxr 0.1.3-r7 apk
spatie/array-to-xml 3.3.0 php-composer
speexdsp 1.2.1-r2 apk
spirv-tools 1.4.313.0-r0 apk
spomky-labs/cbor-php 3.0.4 php-composer
spomky-labs/pki-framework 1.2.1 php-composer
sqlite-libs 3.49.2-r1 apk
sratom 0.6.18-r0 apk
ssl_client 1.37.0-r19 apk
stecman/symfony-console-completion v0.14.0 php-composer
sudo 1.9.17_p2-r0 apk
support 4.0.0-dev.0 npm
symfony/console v6.4.11 php-composer
symfony/console v6.4.17 php-composer
symfony/css-selector v6.4.13 php-composer
symfony/deprecation-contracts v3.5.0 php-composer
symfony/deprecation-contracts v3.6.0 php-composer
symfony/dom-crawler v6.4.23 php-composer
symfony/event-dispatcher v6.4.8 php-composer
symfony/event-dispatcher-contracts v3.5.0 php-composer
symfony/filesystem v6.4.9 php-composer
symfony/http-foundation v6.4.14 php-composer
symfony/mailer v6.4.12 php-composer
symfony/mime v6.4.12 php-composer
symfony/polyfill-ctype v1.31.0 php-composer
symfony/polyfill-iconv v1.31.0 php-composer
symfony/polyfill-intl-grapheme v1.31.0 php-composer (+1 duplicate)
symfony/polyfill-intl-grapheme v1.32.0 php-composer
symfony/polyfill-intl-idn v1.32.0 php-composer
symfony/polyfill-intl-normalizer v1.31.0 php-composer (+1 duplicate)
symfony/polyfill-intl-normalizer v1.32.0 php-composer
symfony/polyfill-mbstring v1.31.0 php-composer (+1 duplicate)
symfony/polyfill-mbstring v1.32.0 php-composer
symfony/polyfill-php72 v1.31.0 php-composer
symfony/polyfill-php80 v1.31.0 php-composer
symfony/polyfill-php82 v1.31.0 php-composer
symfony/polyfill-php82 v1.32.0 php-composer
symfony/polyfill-php83 v1.31.0 php-composer
symfony/polyfill-php83 v1.32.0 php-composer
symfony/polyfill-php84 v1.32.0 php-composer
symfony/polyfill-uuid v1.29.0 php-composer
symfony/process v6.4.15 php-composer
symfony/process v6.4.20 php-composer
symfony/routing v6.4.12 php-composer
symfony/service-contracts v3.5.0 php-composer
symfony/service-contracts v3.5.1 php-composer
symfony/string v6.4.11 php-composer
symfony/string v6.4.15 php-composer
symfony/translation v6.4.4 php-composer
symfony/translation-contracts v3.4.2 php-composer
symfony/uid v6.4.3 php-composer
syn 2.0.48 rust-crate
talloc 2.4.2-r1 apk
tap 1.0.1 rust-crate
tdb-libs 1.4.12-r0 apk
teams 32.0.0 npm
terminal_size 0.3.0 rust-crate
tevent 0.16.1-r0 apk
text 6.0.0-dev.0 npm
theseer/tokenizer 1.2.3 php-composer
thiserror 1.0.56 rust-crate
thiserror-impl 1.0.56 rust-crate
tinyvec 1.9.0 rust-crate
twofactor_nextcloud_notification 6.0.0-dev.0 npm
twofactor_totp 14.0.0 npm
tzdata 2025b-r0 apk
unicode-ident 1.0.12 rust-crate
unicode-width 0.1.11 rust-crate
utf8parse 0.2.1 rust-crate
utmps-libs 0.1.3.1-r0 apk
v4l-utils-libs 1.28.1-r1 apk
v_frame 0.3.7 rust-crate
vidstab 1.1.1-r0 apk
viewer 5.0.0-dev.0 npm
vimeo/psalm 5.26.1 php-composer
voku/portable-ascii 2.0.3 php-composer
voku/portable-utf8 6.0.13 php-composer
vulkan-loader 1.4.313.0-r0 apk
wamania/php-stemmer v3.0.1 php-composer
wapmorgan/mp3info 0.1.1 php-composer
wayland-libs-client 1.23.1-r3 apk
web-auth/cose-lib 4.3.0 php-composer
web-auth/webauthn-lib 4.9.1 php-composer
webmozart/assert 1.11.0 php-composer
wyz 0.5.1 rust-crate
x264-libs 0.164.3108-r0 apk
x265-libs 3.6-r0 apk
xvidcore 1.3.7-r2 apk
xz-libs 5.8.1-r0 apk
y4m 0.8.0 rust-crate
zimg 3.0.5-r3 apk
zix-libs 0.6.2-r0 apk
zlib 1.3.1-r2 apk
zstd-libs 1.5.7-r0 apk
+48 -10
View File
@@ -18,6 +18,7 @@ development_versions: true
development_versions_items: development_versions_items:
- {tag: "latest", desc: "Stable Nextcloud releases"} - {tag: "latest", desc: "Stable Nextcloud releases"}
- {tag: "develop", desc: "Beta Nextcloud pre-releases *only*"} - {tag: "develop", desc: "Beta Nextcloud pre-releases *only*"}
- {tag: "previous", desc: "Nextcloud releases from the previous major version"}
# container parameters # container parameters
common_param_env_vars_enabled: true common_param_env_vars_enabled: true
param_container_name: "{{ project_name }}" param_container_name: "{{ project_name }}"
@@ -28,11 +29,15 @@ param_volumes:
param_usage_include_ports: true param_usage_include_ports: true
param_ports: param_ports:
- {external_port: "443", internal_port: "443", port_desc: "WebUI"} - {external_port: "443", internal_port: "443", port_desc: "WebUI"}
readonly_supported: false
nonroot_supported: false
# application setup block # application setup block
app_setup_block_enabled: true app_setup_block_enabled: true
app_setup_block: | app_setup_block: |
Access the webui at `https://<your-ip>:443`, for more information check out [Nextcloud]({{ project_url }}). Access the webui at `https://<your-ip>:443`, for more information check out [Nextcloud]({{ project_url }}).
Note: `occ` should be run without prepending with `sudo -u abc php` or `sudo -u www-data php` ie; `docker exec -it nextcloud occ maintenance:mode --off`
### Updating Nextcloud ### Updating Nextcloud
Updating Nextcloud is done by pulling the new image, and recreating the container with it. Updating Nextcloud is done by pulling the new image, and recreating the container with it.
@@ -47,6 +52,34 @@ app_setup_block: |
If (auto) installed, those built-in packages may cause instability and should be removed. If (auto) installed, those built-in packages may cause instability and should be removed.
### HEIC Image Previews
In order to enable HEIC image preview generation you will need to add the following to your `config.php` file in your `config/www/nextcloud/config' directory;
```
'enable_previews' => true,
'enabledPreviewProviders' =>
array (
'OC\Preview\PNG',
'OC\Preview\JPEG',
'OC\Preview\GIF',
'OC\Preview\BMP',
'OC\Preview\XBitmap',
'OC\Preview\MP3',
'OC\Preview\TXT',
'OC\Preview\MarkDown',
'OC\Preview\OpenDocument',
'OC\Preview\Krita',
'OC\Preview\HEIC',
),
```
You may need to log out and back in for the changes to come in to effect.
This fix was sourced from [Nextcloud Documentation](https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/config_sample_php_parameters.html#enabledpreviewproviders)
Nextcloud state that HEIC preview is disabled by default due to performance or privacy concerns, so enable this at your own risk.
### Custom App Directories ### Custom App Directories
If you are [using custom app directories](https://docs.nextcloud.com/server/latest/admin_manual/apps_management.html#using-custom-app-directories) you will need to make the custom folder(s) you are using available to the web server. The recommended way to do this with our container is to add a volume. Ex: If you are [using custom app directories](https://docs.nextcloud.com/server/latest/admin_manual/apps_management.html#using-custom-app-directories) you will need to make the custom folder(s) you are using available to the web server. The recommended way to do this with our container is to add a volume. Ex:
@@ -75,32 +108,29 @@ init_diagram: |
init-nginx-end -> init-config init-nginx-end -> init-config
init-os-end -> init-config init-os-end -> init-config
init-config -> init-config-end init-config -> init-config-end
init-crontab-config -> init-config-end
init-nextcloud-config -> init-config-end init-nextcloud-config -> init-config-end
init-os-end -> init-crontab-config init-config -> init-crontab-config
init-mods-end -> init-custom-files init-mods-end -> init-custom-files
init-adduser -> init-device-perms
base -> init-envfile base -> init-envfile
init-os-end -> init-folders init-os-end -> init-folders
init-php -> init-keygen init-php -> init-keygen
base -> init-migrations base -> init-migrations
base -> init-mods
init-config-end -> init-mods init-config-end -> init-mods
init-version-checks -> init-mods
init-mods -> init-mods-end
init-mods-package-install -> init-mods-end init-mods-package-install -> init-mods-end
init-mods -> init-mods-package-install init-mods -> init-mods-package-install
init-nginx-end -> init-nextcloud-config init-nginx-end -> init-nextcloud-config
init-samples -> init-nginx init-samples -> init-nginx
init-permissions -> init-nginx-end init-version-checks -> init-nginx-end
base -> init-os-end
init-adduser -> init-os-end init-adduser -> init-os-end
init-device-perms -> init-os-end
init-envfile -> init-os-end init-envfile -> init-os-end
init-migrations -> init-os-end
init-keygen -> init-permissions init-keygen -> init-permissions
init-nginx -> init-php init-nginx -> init-php
init-folders -> init-samples init-folders -> init-samples
init-custom-files -> init-services init-custom-files -> init-services
init-mods-end -> init-services init-permissions -> init-version-checks
init-config-end -> init-version-checks
init-services -> svc-cron init-services -> svc-cron
svc-cron -> legacy-services svc-cron -> legacy-services
init-services -> svc-nginx init-services -> svc-nginx
@@ -109,13 +139,21 @@ init_diagram: |
svc-php-fpm -> legacy-services svc-php-fpm -> legacy-services
} }
Base Images: { Base Images: {
"baseimage-alpine-nginx:3.20" <- "baseimage-alpine:3.20" "baseimage-alpine-nginx:3.22" <- "baseimage-alpine:3.22"
} }
"nextcloud:develop" <- Base Images "nextcloud:develop" <- Base Images
# changelog # changelog
changelogs: changelogs:
- {date: "10.07.25:", desc: "Rebase to Alpine 3.22."}
- {date: "12.02.25:", desc: "Rebase to Alpine 3.21."}
- {date: "09.01.25:", desc: "Fix uploading large files. Existing users should update their nginx confs."} - {date: "09.01.25:", desc: "Fix uploading large files. Existing users should update their nginx confs."}
- {date: "09.07.24:", desc: "Add `previous` tag for n-1 releases."}
- {date: "24.06.24:", desc: "Rebase to Alpine 3.20. Existing users should update their nginx confs to avoid http2 deprecation warnings."} - {date: "24.06.24:", desc: "Rebase to Alpine 3.20. Existing users should update their nginx confs to avoid http2 deprecation warnings."}
- {date: "19.05.24:", desc: "Added util-linux package required for taskset."}
- {date: "10.04.24:", desc: "Added imagemagick-pdf."}
- {date: "05.04.24:", desc: "Added imagemagick-heic. Manual update to `config.php` required - see above."}
- {date: "02.04.24:", desc: "Existing users should update: site-confs/default.conf - Add support for the Client Push (notify_push) plugin and the [new mod](https://github.com/linuxserver/docker-mods/tree/nextcloud-notify-push)."}
- {date: "22.03.24:", desc: "Add imagemagick-svg module."}
- {date: "06.03.24:", desc: "Rebase to Alpine 3.19 with php 8.3."} - {date: "06.03.24:", desc: "Rebase to Alpine 3.19 with php 8.3."}
- {date: "02.01.24:", desc: "Existing users should update: site-confs/default.conf - Cleanup default site conf."} - {date: "02.01.24:", desc: "Existing users should update: site-confs/default.conf - Cleanup default site conf."}
- {date: "22.12.23:", desc: "Site default conf updating to include mime.types for js and mjs and update location to include more file types."} - {date: "22.12.23:", desc: "Site default conf updating to include mime.types for js and mjs and update location to include more file types."}
@@ -1,4 +1,4 @@
## Version 2024/07/16 - Changelog: https://github.com/linuxserver/docker-nextcloud/commits/master/root/defaults/nginx/site-confs/default.conf.sample ## Version 2025/07/10 - Changelog: https://github.com/linuxserver/docker-nextcloud/commits/master/root/defaults/nginx/site-confs/default.conf.sample
# Set the `immutable` cache control options only for assets with a cache busting `v` argument # Set the `immutable` cache control options only for assets with a cache busting `v` argument
map $arg_v $asset_immutable { map $arg_v $asset_immutable {
@@ -11,6 +11,8 @@ server {
listen [::]:80 default_server; listen [::]:80 default_server;
listen 443 ssl default_server; listen 443 ssl default_server;
listen [::]:443 ssl default_server; listen [::]:443 ssl default_server;
listen 443 quic reuseport default_server;
listen [::]:443 quic reuseport default_server;
server_name _; server_name _;
@@ -10,7 +10,7 @@ mkdir -p \
/data /data
# migrate legacy install (copy inside container) # migrate legacy install (copy inside container)
if [ -f /config/www/nextcloud/version.php ]; then if [[ -f /config/www/nextcloud/version.php ]]; then
echo "Migrating legacy install (this can take a while) ...)" echo "Migrating legacy install (this can take a while) ...)"
rsync -rlD --remove-source-files --exclude-from=/app/upgrade.exclude /config/www/nextcloud/ /app/www/public/ rsync -rlD --remove-source-files --exclude-from=/app/upgrade.exclude /config/www/nextcloud/ /app/www/public/
rm -rf /config/www/nextcloud/updater/ rm -rf /config/www/nextcloud/updater/
@@ -26,7 +26,7 @@ fi
# symlink config folders # symlink config folders
for dir in apps config themes; do for dir in apps config themes; do
if [ "$(readlink /app/www/public/${dir})" != "/config/www/nextcloud/${dir}" ]; then if [[ "$(readlink /app/www/public/${dir})" != "/config/www/nextcloud/${dir}" ]]; then
rm -rf "/app/www/public/${dir}" rm -rf "/app/www/public/${dir}"
ln -s "/config/www/nextcloud/${dir}" "/app/www/public/${dir}" ln -s "/config/www/nextcloud/${dir}" "/app/www/public/${dir}"
lsiown abc:abc "/config/www/nextcloud/${dir}" "/app/www/public/${dir}" lsiown abc:abc "/config/www/nextcloud/${dir}" "/app/www/public/${dir}"
@@ -34,9 +34,9 @@ for dir in apps config themes; do
done done
# get versions # get versions
image_version=$(php -r "require '/app/www/src/version.php'; echo implode('.', \$OC_Version);" 2>/dev/null) image_version=$(php -r "require '/app/www/src/version.php'; echo implode('.', \$OC_Version);" 2>/dev/null | xargs)
installed_version=$(php -r "require '/config/www/nextcloud/config/config.php'; echo \$CONFIG['version'];" 2>/dev/null) installed_version=$(php -r "require '/config/www/nextcloud/config/config.php'; echo \$CONFIG['version'];" 2>/dev/null | xargs)
if [ "${installed_version}" = "" ]; then if [[ "${installed_version}" = "" ]]; then
installed_version="0.0.0.0" installed_version="0.0.0.0"
fi fi
image_major="${image_version%%.*}" image_major="${image_version%%.*}"
@@ -54,23 +54,23 @@ if vergt "${installed_version}" "${image_version}"; then
sleep infinity sleep infinity
fi fi
if [ "${installed_version}" != "0.0.0.0" ] && vergt "${image_major}" "${max_upgrade}"; then if [[ "${installed_version}" != "0.0.0.0" ]] && vergt "${image_major}" "${max_upgrade}"; then
echo "Can't start Nextcloud because the version of the data (${installed_version}) is more than one major version behind the docker image version (${image_version}) and upgrading more than one major version is not supported. Please run an image tagged for the major version ${max_upgrade} first." echo "Can't start Nextcloud because the version of the data (${installed_version}) is more than one major version behind the docker image version (${image_version}) and upgrading more than one major version is not supported. Please run an image tagged for the major version ${max_upgrade} first."
sleep infinity sleep infinity
fi fi
if [ "${installed_version}" = "0.0.0.0" ] || [ ! -f /app/www/public/version.php ] || [ -z "$(ls -A /config/www/nextcloud/apps 2>/dev/null)" ]; then if [[ "${installed_version}" = "0.0.0.0" ]] || [[ ! -f /app/www/public/version.php ]] || [[ -z "$(ls -A /config/www/nextcloud/apps 2>/dev/null)" ]]; then
touch /tmp/needs_install touch /tmp/needs_install
fi fi
if [ "${installed_version}" != "0.0.0.0" ] && vergt "${image_version}" "${installed_version}"; then if [[ "${installed_version}" != "0.0.0.0" ]] && vergt "${image_version}" "${installed_version}"; then
touch /tmp/needs_upgrade touch /tmp/needs_upgrade
fi fi
# initialize nextcloud # initialize nextcloud
if [ -f /config/www/nextcloud/config/needs_migration ] || [ -f /tmp/needs_install ] || [ -f /tmp/needs_upgrade ]; then if [[ -f /config/www/nextcloud/config/needs_migration ]] || [[ -f /tmp/needs_install ]] || [[ -f /tmp/needs_upgrade ]]; then
echo "Initializing nextcloud ${image_version} (this can take a while) ..." echo "Initializing nextcloud ${image_version} (this can take a while) ..."
if [ -f /config/www/nextcloud/config/needs_migration ] || [ -f /tmp/needs_upgrade ]; then if [[ -f /config/www/nextcloud/config/needs_migration ]] || [[ -f /tmp/needs_upgrade ]]; then
echo "Upgrading nextcloud from ${installed_version} ..." echo "Upgrading nextcloud from ${installed_version} ..."
shippedApps=$(jq -r .shippedApps[] /app/www/src/core/shipped.json) shippedApps=$(jq -r .shippedApps[] /app/www/src/core/shipped.json)
for app in ${shippedApps}; do for app in ${shippedApps}; do
@@ -80,11 +80,11 @@ if [ -f /config/www/nextcloud/config/needs_migration ] || [ -f /tmp/needs_instal
rsync -rlD --exclude-from=/app/upgrade.exclude /app/www/src/ /app/www/public/ rsync -rlD --exclude-from=/app/upgrade.exclude /app/www/src/ /app/www/public/
for dir in apps config themes; do for dir in apps config themes; do
if [ -f /config/www/nextcloud/config/needs_migration ] || [ -f /tmp/needs_upgrade ] || [ -z "$(ls -A /app/www/public/${dir} 2>/dev/null)" ]; then if [[ -f /config/www/nextcloud/config/needs_migration ]] || [[ -f /tmp/needs_upgrade ]] || [[ -z "$(ls -A /app/www/public/${dir} 2>/dev/null)" ]]; then
rsync -rlD --include "/${dir}" --exclude '/*' /app/www/src/ /config/www/nextcloud/ rsync -rlD --include "/${dir}" --exclude '/*' /app/www/src/ /config/www/nextcloud/
fi fi
done done
if [ -z "$(ls -A /data/ 2>/dev/null)" ]; then if [[ -z "$(ls -A /data/ 2>/dev/null)" ]]; then
rsync -rlD --include "/data" --exclude '/*' /app/www/src/ / rsync -rlD --include "/data" --exclude '/*' /app/www/src/ /
fi fi
@@ -94,11 +94,11 @@ if [ -f /config/www/nextcloud/config/needs_migration ] || [ -f /tmp/needs_instal
/app/www/public \ /app/www/public \
/config/www/nextcloud /config/www/nextcloud
if [ -f /config/www/nextcloud/config/needs_migration ] || [ -f /tmp/needs_upgrade ]; then if [[ -f /config/www/nextcloud/config/needs_migration ]] || [[ -f /tmp/needs_upgrade ]]; then
# Upgrade # Upgrade
occ upgrade occ upgrade
else else
if [ "${installed_version}" = "0.0.0.0" ]; then if [[ "${installed_version}" = "0.0.0.0" ]]; then
# Install # Install
echo "New nextcloud instance" echo "New nextcloud instance"
echo "Please run the web-based installer on first connect!" echo "Please run the web-based installer on first connect!"
@@ -148,14 +148,14 @@ for APP in richdocumentscode; do
echo "Removing ${APP}" echo "Removing ${APP}"
fi fi
APP_PATH=$(occ app:getpath "${APP}" 2>/dev/null) APP_PATH=$(occ app:getpath "${APP}" 2>/dev/null)
if [ -z "${APP_PATH}" ] || [ ! -d "${APP_PATH}" ]; then if [[ -z "${APP_PATH}" ]] || [[ ! -d "${APP_PATH}" ]]; then
APP_PATH="/app/www/public/apps/${APP}" APP_PATH="/app/www/public/apps/${APP}"
fi fi
if [ -d "${APP_PATH}" ]; then if [[ -d "${APP_PATH}" ]]; then
occ app:disable "${APP}" >/dev/null 2>&1 occ app:disable "${APP}" >/dev/null 2>&1
fi fi
APP_STATUS="$(occ config:app:get "${APP}" enabled 2>/dev/null)" APP_STATUS="$(occ config:app:get "${APP}" enabled 2>/dev/null)"
if [ "${APP_STATUS}" != "no" ] && [ -n "${APP_STATUS}" ]; then if [[ "${APP_STATUS}" != "no" ]] && [[ -n "${APP_STATUS}" ]]; then
occ config:app:set "${APP}" enabled --value="no" >/dev/null 2>&1 occ config:app:set "${APP}" enabled --value="no" >/dev/null 2>&1
fi fi
occ app:remove "${APP}" >/dev/null 2>&1 occ app:remove "${APP}" >/dev/null 2>&1
@@ -163,14 +163,14 @@ for APP in richdocumentscode; do
done done
# set data directory # set data directory
if [ ! -s /config/www/nextcloud/config/config.php ]; then if [[ ! -s /config/www/nextcloud/config/config.php ]]; then
echo -e "<?php\n\$CONFIG = array (\n 'datadirectory' => '/data',\n);" >/config/www/nextcloud/config/config.php echo -e "<?php\n\$CONFIG = array (\n 'datadirectory' => '/data',\n);" >/config/www/nextcloud/config/config.php
elif [ -f /config/www/nextcloud/config/config.php ]; then elif [[ -f /config/www/nextcloud/config/config.php ]]; then
sed -i "s|/app/www/public/data|/data|g" /config/www/nextcloud/config/config.php sed -i "s|/app/www/public/data|/data|g" /config/www/nextcloud/config/config.php
fi fi
#modify javascript mime type and add .mjs support #modify javascript mime type and add .mjs support
if [ -s /etc/nginx/mime.types ]; then if [[ -s /etc/nginx/mime.types ]]; then
sed -i 's|\bjs;|js mjs;|g' /etc/nginx/mime.types sed -i 's|\bjs;|js mjs;|g' /etc/nginx/mime.types
sed -i 's|\bapplication/javascript|text/javascript|g' /etc/nginx/mime.types sed -i 's|\bapplication/javascript|text/javascript|g' /etc/nginx/mime.types
fi fi
View File