Compare commits

...

20 Commits

Author SHA1 Message Date
LinuxServer-CI 0004b51af8 Bot Updating Package Versions 2024-02-27 11:57:52 +00:00
LinuxServer-CI 9706c0481a Bot Updating Templated Files 2024-02-27 11:50:16 +00:00
LinuxServer-CI bcf04398d0 Bot Updating Templated Files 2024-02-27 11:48:43 +00:00
LinuxServer-CI 48667a56dd Bot Updating Package Versions 2024-02-16 14:34:20 +00:00
LinuxServer-CI b906641f24 Bot Updating Package Versions 2024-02-13 11:52:12 +00:00
LinuxServer-CI 9e83ba52fc Bot Updating Package Versions 2024-02-06 11:49:42 +00:00
LinuxServer-CI 0dfd84df5c Bot Updating Package Versions 2024-01-29 15:37:30 +00:00
LinuxServer-CI 231f432f80 Bot Updating Package Versions 2024-01-23 10:40:44 +00:00
LinuxServer-CI c15658c110 Bot Updating Package Versions 2024-01-18 17:36:47 +00:00
LinuxServer-CI 388fc6d47a Bot Updating Package Versions 2024-01-16 11:56:53 +00:00
LinuxServer-CI 2fe50c2f12 Bot Updating Templated Files 2024-01-16 11:50:34 +00:00
LinuxServer-CI 21dde133fd Bot Updating Templated Files 2024-01-16 11:48:58 +00:00
LinuxServer-CI 7bed73efff Bot Updating Package Versions 2024-01-09 11:50:08 +00:00
driz aede8706ae Merge pull request #406 from linuxserver/dev-mime-fix
Merge pull request #405 from linuxserver/conf-fix-test
2024-01-03 20:55:16 -05:00
Eric Nemchik ccb0036a96 Merge pull request #405 from linuxserver/conf-fix-test
maybe fix nextcloud?
2024-01-03 23:48:00 +00:00
LinuxServer-CI 6675775f5c Bot Updating Templated Files 2024-01-02 16:12:23 +00:00
Eric Nemchik 9d7ea19a71 Merge pull request #404 from linuxserver/cleanup-nginx-develop
Cleanup default site conf
2024-01-02 10:10:21 -06:00
Eric Nemchik 7a4dc0aa13 Update readme date
Signed-off-by: GitHub <noreply@github.com>
2024-01-02 16:07:05 +00:00
Eric Nemchik 56461a34b3 Cleanup default site conf
Signed-off-by: Eric Nemchik <eric@nemchik.com>
2024-01-02 16:05:58 +00:00
LinuxServer-CI f131871e4c Bot Updating Package Versions 2024-01-02 11:49:44 +00:00
11 changed files with 142 additions and 161 deletions
+2 -2
View File
@@ -67,10 +67,10 @@ body:
- type: textarea
attributes:
description: |
Provide a full docker log, output of "docker logs linuxserver.io"
Provide a full docker log, output of "docker logs nextcloud"
label: Container logs
placeholder: |
Output of `docker logs linuxserver.io`
Output of `docker logs nextcloud`
render: bash
validations:
required: true
+1 -1
View File
@@ -7,7 +7,7 @@ jobs:
external-trigger-develop:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3.1.0
- uses: actions/checkout@v4.1.1
- name: External Trigger
if: github.ref == 'refs/heads/develop'
@@ -9,7 +9,7 @@ jobs:
external-trigger-scheduler:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3.1.0
- uses: actions/checkout@v4.1.1
with:
fetch-depth: '0'
+1 -1
View File
@@ -7,7 +7,7 @@ jobs:
package-trigger-develop:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3.1.0
- uses: actions/checkout@v4.1.1
- name: Package Trigger
if: github.ref == 'refs/heads/develop'
@@ -9,7 +9,7 @@ jobs:
package-trigger-scheduler:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3.1.0
- uses: actions/checkout@v4.1.1
with:
fetch-depth: '0'
Vendored
+58 -60
View File
@@ -16,6 +16,7 @@ pipeline {
GITHUB_TOKEN=credentials('498b4638-2d02-4ce5-832d-8a57d01d97ab')
GITLAB_TOKEN=credentials('b6f0f1dd-6952-4cf6-95d1-9c06380283f0')
GITLAB_NAMESPACE=credentials('gitlab-namespace-id')
DOCKERHUB_TOKEN=credentials('docker-hub-ci-pat')
BUILD_VERSION_ARG = 'NEXTCLOUD_RELEASE'
LS_USER = 'linuxserver'
LS_REPO = 'docker-nextcloud'
@@ -58,11 +59,16 @@ pipeline {
env.COMMIT_SHA = sh(
script: '''git rev-parse HEAD''',
returnStdout: true).trim()
env.GH_DEFAULT_BRANCH = sh(
script: '''git remote show origin | grep "HEAD branch:" | sed 's|.*HEAD branch: ||' ''',
returnStdout: true).trim()
env.CODE_URL = 'https://github.com/' + env.LS_USER + '/' + env.LS_REPO + '/commit/' + env.GIT_COMMIT
env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.DOCKERHUB_IMAGE + '/tags/'
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 ./.github/workflows/package_trigger.yml'
}
sh '''#! /bin/bash
echo "The default github branch detected as ${GH_DEFAULT_BRANCH}" '''
script{
env.LS_RELEASE_NUMBER = sh(
script: '''echo ${LS_RELEASE} |sed 's/^.*-ls//g' ''',
@@ -120,7 +126,7 @@ pipeline {
steps{
script{
env.EXT_RELEASE_CLEAN = sh(
script: '''echo ${EXT_RELEASE} | sed 's/[~,%@+;:/]//g' ''',
script: '''echo ${EXT_RELEASE} | sed 's/[~,%@+;:/ ]//g' ''',
returnStdout: true).trim()
def semver = env.EXT_RELEASE_CLEAN =~ /(\d+)\.(\d+)\.(\d+)/
@@ -138,7 +144,7 @@ pipeline {
}
if (env.SEMVER != null) {
if (BRANCH_NAME != "master" && BRANCH_NAME != "main") {
if (BRANCH_NAME != "${env.GH_DEFAULT_BRANCH}") {
env.SEMVER = "${env.SEMVER}-${BRANCH_NAME}"
}
println("SEMVER: ${env.SEMVER}")
@@ -239,9 +245,11 @@ pipeline {
-v ${WORKSPACE}:/mnt \
-e AWS_ACCESS_KEY_ID=\"${S3_KEY}\" \
-e AWS_SECRET_ACCESS_KEY=\"${S3_SECRET}\" \
ghcr.io/linuxserver/baseimage-alpine:3.17 s6-envdir -fn -- /var/run/s6/container_environment /bin/bash -c "\
apk add --no-cache py3-pip && \
pip install s3cmd && \
ghcr.io/linuxserver/baseimage-alpine:3.19 s6-envdir -fn -- /var/run/s6/container_environment /bin/bash -c "\
apk add --no-cache python3 && \
python3 -m venv /lsiopy && \
pip install --no-cache-dir -U pip && \
pip install --no-cache-dir s3cmd && \
s3cmd put --no-preserve --acl-public -m text/xml /mnt/shellcheck-result.xml s3://ci-tests.linuxserver.io/${IMAGE}/${META_TAG}/shellcheck-result.xml" || :'''
}
}
@@ -270,7 +278,8 @@ pipeline {
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/Jenkinsfile ${TEMPDIR}/repo/${LS_REPO}/
git add Jenkinsfile
git commit -m 'Bot Updating Templated Files'
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git --all
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
echo "Updating Jenkinsfile"
rm -Rf ${TEMPDIR}
@@ -294,7 +303,8 @@ pipeline {
git rm "${i}"
done
git commit -m 'Bot Updating Templated Files'
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git --all
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
echo "Deleting old and deprecated templates"
rm -Rf ${TEMPDIR}
@@ -323,19 +333,26 @@ pipeline {
fi
git add readme-vars.yml ${TEMPLATED_FILES}
git commit -m 'Bot Updating Templated Files'
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git --all
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
else
echo "false" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
fi
mkdir -p ${TEMPDIR}/docs
git clone https://github.com/linuxserver/docker-documentation.git ${TEMPDIR}/docs/docker-documentation
if [[ ("${BRANCH_NAME}" == "master") || ("${BRANCH_NAME}" == "main") ]] && [[ (! -f ${TEMPDIR}/docs/docker-documentation/docs/images/docker-${CONTAINER_NAME}.md) || ("$(md5sum ${TEMPDIR}/docs/docker-documentation/docs/images/docker-${CONTAINER_NAME}.md | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/docker-${CONTAINER_NAME}.md | awk '{ print $1 }')") ]]; then
if [[ "${BRANCH_NAME}" == "${GH_DEFAULT_BRANCH}" ]] && [[ (! -f ${TEMPDIR}/docs/docker-documentation/docs/images/docker-${CONTAINER_NAME}.md) || ("$(md5sum ${TEMPDIR}/docs/docker-documentation/docs/images/docker-${CONTAINER_NAME}.md | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/docker-${CONTAINER_NAME}.md | awk '{ print $1 }')") ]]; then
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/docker-${CONTAINER_NAME}.md ${TEMPDIR}/docs/docker-documentation/docs/images/
cd ${TEMPDIR}/docs/docker-documentation
GH_DOCS_DEFAULT_BRANCH=$(git remote show origin | grep "HEAD branch:" | sed 's|.*HEAD branch: ||')
git add docs/images/docker-${CONTAINER_NAME}.md
git commit -m 'Bot Updating Documentation'
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/docker-documentation.git --all
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/docker-documentation.git ${GH_DOCS_DEFAULT_BRANCH} --rebase
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/docker-documentation.git ${GH_DOCS_DEFAULT_BRANCH} || \
(MAXWAIT="10" && echo "Push to docs failed, trying again in ${MAXWAIT} seconds" && \
sleep $((RANDOM % MAXWAIT)) && \
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/docker-documentation.git ${GH_DOCS_DEFAULT_BRANCH} --rebase && \
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/docker-documentation.git ${GH_DOCS_DEFAULT_BRANCH})
fi
mkdir -p ${TEMPDIR}/unraid
git clone https://github.com/linuxserver/docker-templates.git ${TEMPDIR}/unraid/docker-templates
@@ -345,8 +362,9 @@ pipeline {
elif [[ -f ${TEMPDIR}/unraid/docker-templates/linuxserver.io/img/${CONTAINER_NAME}-icon.png ]]; then
sed -i "s|master/linuxserver.io/img/linuxserver-ls-logo.png|master/linuxserver.io/img/${CONTAINER_NAME}-icon.png|" ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml
fi
if [[ ("${BRANCH_NAME}" == "master") || ("${BRANCH_NAME}" == "main") ]] && [[ (! -f ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml) || ("$(md5sum ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml | awk '{ print $1 }')") ]]; then
if [[ "${BRANCH_NAME}" == "${GH_DEFAULT_BRANCH}" ]] && [[ (! -f ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml) || ("$(md5sum ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml | awk '{ print $1 }')") ]]; then
cd ${TEMPDIR}/unraid/templates/
GH_TEMPLATES_DEFAULT_BRANCH=$(git remote show origin | grep "HEAD branch:" | sed 's|.*HEAD branch: ||')
if grep -wq "${CONTAINER_NAME}" ${TEMPDIR}/unraid/templates/unraid/ignore.list; then
echo "Image is on the ignore list, marking Unraid template as deprecated"
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml ${TEMPDIR}/unraid/templates/unraid/
@@ -358,7 +376,31 @@ pipeline {
git add unraid/${CONTAINER_NAME}.xml
git commit -m 'Bot Updating Unraid Template'
fi
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/templates.git --all
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/templates.git ${GH_TEMPLATES_DEFAULT_BRANCH} --rebase
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/templates.git ${GH_TEMPLATES_DEFAULT_BRANCH} || \
(MAXWAIT="10" && echo "Push to unraid templates failed, trying again in ${MAXWAIT} seconds" && \
sleep $((RANDOM % MAXWAIT)) && \
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/templates.git ${GH_TEMPLATES_DEFAULT_BRANCH} --rebase && \
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/templates.git ${GH_TEMPLATES_DEFAULT_BRANCH})
fi
# Stage 4 - Sync Readme to Docker Hub
if [[ "${BRANCH_NAME}" == "${GH_DEFAULT_BRANCH}" ]]; then
if [[ $(cat ${TEMPDIR}/docker-${CONTAINER_NAME}/README.md | wc -m) > 25000 ]]; then
echo "Readme is longer than 25,000 characters. Syncing the lite version to Docker Hub"
DH_README_SYNC_PATH="${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/README.lite"
else
echo "Syncing readme to Docker Hub"
DH_README_SYNC_PATH="${TEMPDIR}/docker-${CONTAINER_NAME}/README.md"
fi
DH_TOKEN=$(curl -d '{"username":"linuxserverci", "password":"'${DOCKERHUB_TOKEN}'"}' -H "Content-Type: application/json" -X POST https://hub.docker.com/v2/users/login | jq -r '.token')
curl -s \
-H "Authorization: JWT ${DH_TOKEN}" \
-H "Content-Type: application/json" \
-X PATCH \
-d "{\\"full_description\\":$(jq -Rsa . ${DH_README_SYNC_PATH})}" \
https://hub.docker.com/v2/repositories/${DOCKERHUB_IMAGE} || :
else
echo "Not the default Github branch. Skipping readme sync to Docker Hub."
fi
rm -Rf ${TEMPDIR}'''
script{
@@ -558,7 +600,8 @@ pipeline {
wait
git add package_versions.txt
git commit -m 'Bot Updating Package Versions'
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git --all
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
echo "true" > /tmp/packages-${COMMIT_SHA}-${BUILD_NUMBER}
echo "Package tag updated, stopping build process"
else
@@ -661,12 +704,6 @@ pipeline {
}
steps {
withCredentials([
[
$class: 'UsernamePasswordMultiBinding',
credentialsId: '3f9ba4d5-100d-45b0-a3c4-633fd6061207',
usernameVariable: 'DOCKERUSER',
passwordVariable: 'DOCKERPASS'
],
[
$class: 'UsernamePasswordMultiBinding',
credentialsId: 'Quay.io-Robot',
@@ -677,7 +714,7 @@ pipeline {
retry(5) {
sh '''#! /bin/bash
set -e
echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
echo $DOCKERHUB_TOKEN | docker login -u linuxserverci --password-stdin
echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin
echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
@@ -708,12 +745,6 @@ pipeline {
}
steps {
withCredentials([
[
$class: 'UsernamePasswordMultiBinding',
credentialsId: '3f9ba4d5-100d-45b0-a3c4-633fd6061207',
usernameVariable: 'DOCKERUSER',
passwordVariable: 'DOCKERPASS'
],
[
$class: 'UsernamePasswordMultiBinding',
credentialsId: 'Quay.io-Robot',
@@ -724,7 +755,7 @@ pipeline {
retry(5) {
sh '''#! /bin/bash
set -e
echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
echo $DOCKERHUB_TOKEN | docker login -u linuxserverci --password-stdin
echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin
echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
@@ -854,39 +885,6 @@ EOF
) '''
}
}
// Use helper container to sync the current README on master to the dockerhub endpoint
stage('Sync-README') {
when {
environment name: 'CHANGE_ID', value: ''
environment name: 'EXIT_STATUS', value: ''
}
steps {
withCredentials([
[
$class: 'UsernamePasswordMultiBinding',
credentialsId: '3f9ba4d5-100d-45b0-a3c4-633fd6061207',
usernameVariable: 'DOCKERUSER',
passwordVariable: 'DOCKERPASS'
]
]) {
sh '''#! /bin/bash
set -e
TEMPDIR=$(mktemp -d)
docker pull ghcr.io/linuxserver/jenkins-builder:latest
docker run --rm -e CONTAINER_NAME=${CONTAINER_NAME} -e GITHUB_BRANCH="${BRANCH_NAME}" -v ${TEMPDIR}:/ansible/jenkins ghcr.io/linuxserver/jenkins-builder:latest
docker pull ghcr.io/linuxserver/readme-sync
docker run --rm=true \
-e DOCKERHUB_USERNAME=$DOCKERUSER \
-e DOCKERHUB_PASSWORD=$DOCKERPASS \
-e GIT_REPOSITORY=${LS_USER}/${LS_REPO} \
-e DOCKER_REPOSITORY=${IMAGE} \
-e GIT_BRANCH=master \
-v ${TEMPDIR}/docker-${CONTAINER_NAME}:/mnt \
ghcr.io/linuxserver/readme-sync bash -c 'node sync'
rm -Rf ${TEMPDIR} '''
}
}
}
// If this is a Pull request send the CI link as a comment on it
stage('Pull Request Comment') {
when {
+2 -17
View File
@@ -110,7 +110,6 @@ To help you get started creating a container from this image you can either use
```yaml
---
version: "2.1"
services:
nextcloud:
image: lscr.io/linuxserver/nextcloud:develop
@@ -224,7 +223,7 @@ We publish various [Docker Mods](https://github.com/linuxserver/docker-mods) to
## Updating Info
Most of our images are static, versioned, and require an image update and container recreation to update the app inside. With some exceptions (ie. nextcloud, plex), we do not recommend or support updating apps inside the container. Please consult the [Application Setup](#application-setup) section above to see if it is recommended for the image.
Most of our images are static, versioned, and require an image update and container recreation to update the app inside. With some exceptions (noted in the relevant readme.md), we do not recommend or support updating apps inside the container. Please consult the [Application Setup](#application-setup) section above to see if it is recommended for the image.
Below are the instructions for updating containers:
@@ -289,21 +288,6 @@ Below are the instructions for updating containers:
docker image prune
```
### Via Watchtower auto-updater (only use if you don't remember the original parameters)
* Pull the latest image at its tag and replace it with the same env variables in one run:
```bash
docker run --rm \
-v /var/run/docker.sock:/var/run/docker.sock \
containrrr/watchtower \
--run-once nextcloud
```
* You can also remove the old dangling images: `docker image prune`
**warning**: We do not endorse the use of Watchtower as a solution to automated updates of existing Docker containers. In fact we generally discourage automated updates. However, this is a useful tool for one-time manual updates of containers where you have forgotten the original parameters. In the long term, we highly recommend using [Docker Compose](https://docs.linuxserver.io/general/docker-compose).
### Image Update Notifications - Diun (Docker Image Update Notifier)
**tip**: We recommend [Diun](https://crazymax.dev/diun/) for update notifications. Other tools that automatically update containers unattended are not recommended or supported.
@@ -331,6 +315,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
## Versions
* **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.
* **28.10.23:** - Disable web upgrades using occ during init.
* **31.08.23:** - Re-add updatenotification app. This allows users to be notified for app updates, but also notifies for NextCloud updates. Updating NextCloud via the web UI is not supported when using this image.
+56 -57
View File
@@ -1,11 +1,11 @@
NAME VERSION TYPE
@nextcloud/text 28.0.0-dev.1 npm
Process Wrapper 0.0.0.0 dotnet
Process Wrapper 1.0.0.0 dotnet
activity 2.20.0 npm
alpine-baselayout 3.4.3-r1 apk
alpine-baselayout-data 3.4.3-r1 apk
alpine-keys 2.4-r1 apk
alpine-release 3.18.5-r0 apk
alpine-release 3.18.6-r0 apk
alsa-lib 1.2.9-r1 apk
amphp/amp v2.6.2 php-composer
amphp/byte-stream v1.8.1 php-composer
@@ -37,13 +37,12 @@ ca-certificates-bundle 20230506-r0 apk
cairo 1.17.8-r1 apk
cairo-gobject 1.17.8-r1 apk
christian-riesen/base32 1.6.0 php-composer
cjson 1.7.15-r4 apk
composer 2.6.6 binary
coreutils 9.3-r1 apk
cjson 1.7.17-r0 apk
composer 2.7.1 binary
coreutils 9.3-r2 apk
cups-libs 2.4.7-r0 apk
curl 8.5.0-r0 apk
cweagans/composer-patches 1.7.3 php-composer
darsyn/ip 4.1.0 php-composer
dbus-libs 1.14.8-r0 apk
deepdiver/zipstreamer 2.0.0 php-composer
deepdiver1975/tarstreamer v2.1.0 php-composer
@@ -76,12 +75,12 @@ gdk-pixbuf 2.42.10-r5 apk
ghostscript 10.02.0-r0 apk
giggsey/libphonenumber-for-php-lite 8.13.12 php-composer
git 2.40.1-r0 apk
glib 2.76.4-r0 apk
glib 2.76.6-r0 apk
glslang-libs 1.3.243.0-r1 apk
gmp 6.2.1-r3 apk
gnu-libiconv 1.17-r1 apk
gnu-libiconv-libs 1.17-r1 apk
gnutls 3.8.0-r2 apk
gnutls 3.8.3-r0 apk
graphite2 1.3.14-r5 apk
guzzlehttp/guzzle 7.5.0 php-composer
guzzlehttp/promises 1.5.2 php-composer
@@ -121,14 +120,14 @@ libbsd 0.11.7-r1 apk
libbz2 1.0.8-r5 apk
libc-utils 0.7.2-r5 apk
libcap2 2.69-r0 apk
libcrypto3 3.1.4-r1 apk
libcrypto3 3.1.4-r5 apk
libcurl 8.5.0-r0 apk
libdav1d 1.2.1-r0 apk
libde265 1.0.12-r0 apk
libde265 1.0.15-r0 apk
libdrm 2.4.115-r4 apk
libedit 20221030.3.1-r1 apk
libevent 2.1.12-r6 apk
libexpat 2.5.0-r1 apk
libexpat 2.6.0-r0 apk
libffi 3.4.4-r2 apk
libformw 6.4_p20230506-r0 apk
libgcc 12.2.1_git20220924-r10 apk
@@ -152,7 +151,7 @@ libpanelw 6.4_p20230506-r0 apk
libpciaccess 0.17-r2 apk
libplacebo 5.264.1-r1 apk
libpng 1.6.39-r3 apk
libpq 15.5-r0 apk
libpq 15.6-r0 apk
libproc2 4.0.4-r0 apk
libpulse 16.1-r10 apk
libraw 0.21.1-r1 apk
@@ -165,7 +164,7 @@ libsndfile 1.2.0-r2 apk
libsodium 1.0.18-r3 apk
libsrt 1.5.2-r0 apk
libssh 0.10.5-r0 apk
libssl3 3.1.4-r1 apk
libssl3 3.1.4-r5 apk
libstdc++ 12.2.1_git20220924-r10 apk
libtasn1 4.19.0-r1 apk
libtheora 1.1.1-r17 apk
@@ -185,7 +184,7 @@ libxdmcp 1.1.4-r2 apk
libxext 1.3.5-r2 apk
libxfixes 6.0.1-r2 apk
libxft 2.3.8-r1 apk
libxml2 2.11.6-r0 apk
libxml2 2.11.7-r0 apk
libxpm 3.5.16-r1 apk
libxrender 0.9.11-r3 apk
libxt 1.3.0-r2 apk
@@ -196,7 +195,7 @@ linux-pam 1.5.2-r10 apk
lmdb 0.9.31-r0 apk
logrotate 3.21.0-r1 apk
lz4-libs 1.9.4-r4 apk
mbedtls 2.28.5-r0 apk
mbedtls 2.28.7-r0 apk
mexitek/phpcolors v1.0.4 php-composer
microsoft/azure-storage-blob 1.5.4 php-composer
microsoft/azure-storage-common 1.5.2 php-composer
@@ -217,7 +216,7 @@ notifications 2.16.0 npm
numactl 2.0.16-r4 apk
onevpl-libs 2023.2.1-r0 apk
oniguruma 6.9.8-r1 apk
openssl 3.1.4-r1 apk
openssl 3.1.4-r5 apk
opus 1.4-r0 apk
orc 0.4.34-r0 apk
p11-kit 0.24.1-r2 apk
@@ -234,32 +233,32 @@ php-http/guzzle7-adapter 1.0.0 php-compos
php-http/httplug 2.2.0 php-composer
php-http/promise 1.1.0 php-composer
php-opencloud/openstack v3.2.1 php-composer
php82 8.2.13-r0 apk
php82-bcmath 8.2.13-r0 apk
php82-bz2 8.2.13-r0 apk
php82-common 8.2.13-r0 apk
php82-ctype 8.2.13-r0 apk
php82-curl 8.2.13-r0 apk
php82-dom 8.2.13-r0 apk
php82-exif 8.2.13-r0 apk
php82-fileinfo 8.2.13-r0 apk
php82-fpm 8.2.13-r0 apk
php82-ftp 8.2.13-r0 apk
php82-gd 8.2.13-r0 apk
php82-gmp 8.2.13-r0 apk
php82-iconv 8.2.13-r0 apk
php82-imap 8.2.13-r0 apk
php82-intl 8.2.13-r0 apk
php82-ldap 8.2.13-r0 apk
php82-mbstring 8.2.13-r0 apk
php82-mysqlnd 8.2.13-r0 apk
php82-opcache 8.2.13-r0 apk
php82-openssl 8.2.13-r0 apk
php82-pcntl 8.2.13-r0 apk
php82-pdo 8.2.13-r0 apk
php82-pdo_mysql 8.2.13-r0 apk
php82-pdo_pgsql 8.2.13-r0 apk
php82-pdo_sqlite 8.2.13-r0 apk
php82 8.2.16-r0 apk
php82-bcmath 8.2.16-r0 apk
php82-bz2 8.2.16-r0 apk
php82-common 8.2.16-r0 apk
php82-ctype 8.2.16-r0 apk
php82-curl 8.2.16-r0 apk
php82-dom 8.2.16-r0 apk
php82-exif 8.2.16-r0 apk
php82-fileinfo 8.2.16-r0 apk
php82-fpm 8.2.16-r0 apk
php82-ftp 8.2.16-r0 apk
php82-gd 8.2.16-r0 apk
php82-gmp 8.2.16-r0 apk
php82-iconv 8.2.16-r0 apk
php82-imap 8.2.16-r0 apk
php82-intl 8.2.16-r0 apk
php82-ldap 8.2.16-r0 apk
php82-mbstring 8.2.16-r0 apk
php82-mysqlnd 8.2.16-r0 apk
php82-opcache 8.2.16-r0 apk
php82-openssl 8.2.16-r0 apk
php82-pcntl 8.2.16-r0 apk
php82-pdo 8.2.16-r0 apk
php82-pdo_mysql 8.2.16-r0 apk
php82-pdo_pgsql 8.2.16-r0 apk
php82-pdo_sqlite 8.2.16-r0 apk
php82-pecl-apcu 5.1.22-r0 apk
php82-pecl-igbinary 3.2.14-r0 apk
php82-pecl-imagick 3.7.0-r5 apk
@@ -267,19 +266,19 @@ php82-pecl-memcached 3.2.0-r1 apk
php82-pecl-msgpack 2.2.0-r0 apk
php82-pecl-redis 6.0.2-r0 apk
php82-pecl-smbclient 1.1.1-r0 apk
php82-pgsql 8.2.13-r0 apk
php82-phar 8.2.13-r0 apk
php82-posix 8.2.13-r0 apk
php82-session 8.2.13-r0 apk
php82-simplexml 8.2.13-r0 apk
php82-sockets 8.2.13-r0 apk
php82-sodium 8.2.13-r0 apk
php82-sqlite3 8.2.13-r0 apk
php82-sysvsem 8.2.13-r0 apk
php82-xml 8.2.13-r0 apk
php82-xmlreader 8.2.13-r0 apk
php82-xmlwriter 8.2.13-r0 apk
php82-zip 8.2.13-r0 apk
php82-pgsql 8.2.16-r0 apk
php82-phar 8.2.16-r0 apk
php82-posix 8.2.16-r0 apk
php82-session 8.2.16-r0 apk
php82-simplexml 8.2.16-r0 apk
php82-sockets 8.2.16-r0 apk
php82-sodium 8.2.16-r0 apk
php82-sqlite3 8.2.16-r0 apk
php82-sysvsem 8.2.16-r0 apk
php82-xml 8.2.16-r0 apk
php82-xmlreader 8.2.16-r0 apk
php82-xmlwriter 8.2.16-r0 apk
php82-zip 8.2.16-r0 apk
phpseclib/phpseclib 2.0.45 php-composer
pimple/pimple v3.5.0 php-composer
pixman 0.42.2-r1 apk
@@ -329,7 +328,7 @@ speexdsp 1.2.1-r1 apk
spirv-tools 1.3.243.0-r1 apk
spomky-labs/base64url v2.0.4 php-composer
spomky-labs/cbor-php v2.0.1 php-composer
sqlite-libs 3.41.2-r2 apk
sqlite-libs 3.41.2-r3 apk
ssl_client 1.36.1-r5 apk
stecman/symfony-console-completion 0.11.0 php-composer
sudo 1.9.13_p3-r2 apk
@@ -365,7 +364,7 @@ tevent 0.14.1-r1 apk
thecodingmachine/safe v1.3.3 php-composer
tiff 4.5.1-r0 apk
twofactor_totp 10.0.0-beta2 npm
tzdata 2023c-r1 apk
tzdata 2024a-r0 apk
utmps-libs 0.1.2.1-r1 apk
v4l-utils-libs 1.24.1-r0 apk
vidstab 1.1.1-r0 apk
+1
View File
@@ -79,6 +79,7 @@ app_setup_block: |
# changelog
changelogs:
- { 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: "28.10.23:", desc: "Disable web upgrades using occ during init." }
- { date: "31.08.23:", desc: "Re-add updatenotification app. This allows users to be notified for app updates, but also notifies for NextCloud updates. Updating NextCloud via the web UI is not supported when using this image." }
@@ -1,4 +1,4 @@
## Version 2023/12/22 - Changelog: https://github.com/linuxserver/docker-nextcloud/commits/master/root/defaults/nginx/site-confs/default.conf.sample
## Version 2024/01/03 - 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
map $arg_v $asset_immutable {
@@ -36,25 +36,24 @@ server {
gzip_comp_level 4;
gzip_min_length 256;
gzip_proxied expired no-cache no-store private no_last_modified no_etag auth;
gzip_types application/atom+xml application/javascript application/json application/ld+json application/manifest+json application/rss+xml application/vnd.geo+json application/vnd.ms-fontobject application/wasm application/x-font-ttf application/x-web-app-manifest+json application/xhtml+xml application/xml font/opentype image/bmp image/svg+xml image/x-icon text/cache-manifest text/css text/plain text/vcard text/vnd.rim.location.xloc text/vtt text/x-component text/x-cross-domain-policy;
gzip_types application/atom+xml text/javascript application/json application/ld+json application/manifest+json application/rss+xml application/vnd.geo+json application/vnd.ms-fontobject application/wasm application/x-font-ttf application/x-web-app-manifest+json application/xhtml+xml application/xml font/opentype image/bmp image/svg+xml image/x-icon text/cache-manifest text/css text/plain text/vcard text/vnd.rim.location.xloc text/vtt text/x-component text/x-cross-domain-policy;
# Pagespeed is not supported by Nextcloud, so if your server is built
# with the `ngx_pagespeed` module, uncomment this line to disable it.
#pagespeed off;
# The settings allows you to optimize the HTTP2 bandwitdth.
# The settings allows you to optimize the HTTP2 bandwidth.
# See https://blog.cloudflare.com/delivering-http-2-upload-speed-improvements/
# for tunning hints
# for tuning hints
client_body_buffer_size 512k;
# HTTP response headers borrowed from Nextcloud `.htaccess`
add_header Referrer-Policy "no-referrer" always;
add_header X-Content-Type-Options "nosniff" always;
add_header X-Download-Options "noopen" always;
add_header X-Frame-Options "SAMEORIGIN" always;
add_header X-Permitted-Cross-Domain-Policies "none" always;
add_header X-Robots-Tag "noindex, nofollow" always;
add_header X-XSS-Protection "1; mode=block" always;
add_header Referrer-Policy "no-referrer" always;
add_header X-Content-Type-Options "nosniff" always;
add_header X-Frame-Options "SAMEORIGIN" always;
add_header X-Permitted-Cross-Domain-Policies "none" always;
add_header X-Robots-Tag "noindex, nofollow" always;
add_header X-XSS-Protection "1; mode=block" always;
# Remove X-Powered-By, which is an information leak
fastcgi_hide_header X-Powered-By;
@@ -66,7 +65,7 @@ server {
# that file is correctly served; if it doesn't, then the request is passed to
# the front-end controller. This consistent behaviour means that we don't need
# to specify custom rules for certain paths (e.g. images and other assets,
# `/updater`, `/ocm-provider`, `/ocs-provider`), and thus
# `/updater`, `/ocs-provider`), and thus
# `try_files $uri $uri/ /index.php$request_uri`
# always provides the desired behaviour.
index index.php index.html /index.php$request_uri;
@@ -113,7 +112,7 @@ server {
# to the URI, resulting in a HTTP 500 error response.
location ~ \.php(?:$|/) {
# Required for legacy support
rewrite ^/(?!index|remote|public|cron|core\/ajax\/update|status|ocs\/v[12]|updater\/.+|oc[ms]-provider\/.+|.+\/richdocumentscode\/proxy) /index.php$request_uri;
rewrite ^/(?!index|remote|public|cron|core\/ajax\/update|status|ocs\/v[12]|updater\/.+|ocs-provider\/.+|.+\/richdocumentscode\/proxy) /index.php$request_uri;
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
set $path_info $fastcgi_path_info;
@@ -134,6 +133,7 @@ server {
fastcgi_max_temp_file_size 0;
}
# Serve static files
location ~ \.(?:css|js|mjs|svg|gif|png|jpg|ico|wasm|tflite|map|ogg|flac)$ {
try_files $uri /index.php$request_uri;
add_header Cache-Control "public, max-age=15778463, $asset_immutable";
@@ -143,14 +143,6 @@ server {
default_type application/wasm;
}
location ~ \.js$ {
default_type text/javascript;
}
location ~ \.mjs$ {
default_type text/javascript;
}
}
location ~ \.woff2?$ {
@@ -168,3 +168,9 @@ if [ ! -s /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
fi
#modify javascript mime type and add .mjs support
if [ -s /etc/nginx/mime.types ]; then
sed -i 's|\bjs;|js mjs;|g' /etc/nginx/mime.types
sed -i 's|\bapplication/javascript|text/javascript|g' /etc/nginx/mime.types
fi