Compare commits

..

121 Commits

Author SHA1 Message Date
LinuxServer-CI a1efdbff95 Bot Updating Package Versions 2024-05-19 12:27:49 +00:00
LinuxServer-CI 1b21aa9752 Bot Updating Templated Files 2024-05-19 12:23:48 +00:00
Adam 82d3ce42f5 Merge pull request #438 from matteocavestri/master
Add: util-linux (taskset)
2024-05-19 13:21:25 +01:00
Matteo Cavestri 1c717ed2d3 Update readme-vars.yml 2024-05-19 12:43:45 +02:00
Matteo Cavestri a9b4b64147 Add: util-linux (taskset) 2024-05-17 09:24:28 +02:00
LinuxServer-CI 1f8d395d78 Bot Updating Package Versions 2024-05-14 11:53:21 +00:00
LinuxServer-CI d520caca1d Bot Updating Templated Files 2024-05-14 11:49:01 +00:00
LinuxServer-CI 02d627ff88 Bot Updating Package Versions 2024-05-07 11:53:25 +00:00
LinuxServer-CI 035711f3e7 Bot Updating Templated Files 2024-05-07 11:49:12 +00:00
LinuxServer-CI f72ad27864 Bot Updating Package Versions 2024-04-30 11:53:36 +00:00
LinuxServer-CI 0281fd2f76 Bot Updating Templated Files 2024-04-30 11:49:14 +00:00
LinuxServer-CI 2273a0b3fc Bot Updating Package Versions 2024-04-24 14:37:34 +00:00
LinuxServer-CI 923c3301ae Bot Updating Package Versions 2024-04-23 11:50:48 +00:00
LinuxServer-CI afc2c65ba0 Bot Updating Package Versions 2024-04-16 11:50:28 +00:00
LinuxServer-CI 1bdc3ce934 Bot Updating Package Versions 2024-04-10 20:03:10 +00:00
LinuxServer-CI 4c43010214 Bot Updating Templated Files 2024-04-10 19:57:44 +00:00
Homer 6d784f8cc4 Merge pull request #428 from linuxserver/add-imagemagickpdf
Add imagemagick-pdf
2024-04-10 20:55:05 +01:00
homerr d8d98c708c Add imagemagick-pdf 2024-04-10 20:35:22 +01:00
LinuxServer-CI 1b5d3ee8f8 Bot Updating Package Versions 2024-04-05 15:53:59 +00:00
LinuxServer-CI 195ba6d634 Bot Updating Templated Files 2024-04-05 15:50:07 +00:00
Homer 5e54e9ed78 Merge pull request #424 from linuxserver/add-heic
Added imagemagick-heic and updated readme
2024-04-05 16:48:32 +01:00
homerr c9de3ee13f readme tweaks 2024-04-05 16:17:13 +01:00
homerr 5905985884 Added imagemagick-heic and updated readme 2024-04-05 14:53:27 +01:00
LinuxServer-CI 80a6a72a2e Bot Updating Package Versions 2024-04-04 19:20:05 +00:00
Homer 94059f4f8c Merge pull request #423 from linuxserver/notify_push
Add support for the notify_push mod
2024-04-04 20:16:08 +01:00
aptalca f3a23468b8 add websocket support for notify_push 2024-04-02 17:00:13 -04:00
aptalca 17e9b76ae2 use regex in location 2024-04-02 15:20:22 -04:00
aptalca 69c818dfe9 update date and fix typo 2024-04-02 15:07:52 -04:00
aptalca 8f491be450 Add support for the notify_push mod 2024-04-02 15:05:35 -04:00
LinuxServer-CI 1976901a43 Bot Updating Package Versions 2024-04-02 11:52:42 +00:00
LinuxServer-CI 12d3825554 Bot Updating Package Versions 2024-03-26 11:50:29 +00:00
LinuxServer-CI aec8824238 Bot Updating Package Versions 2024-03-22 16:03:18 +00:00
LinuxServer-CI 86795c1bd5 Bot Updating Templated Files 2024-03-22 15:57:53 +00:00
Adam 92dd23b49b Merge pull request #419 from linuxserver/imagemagick-svg
Add imagemagick-svg
2024-03-22 15:56:13 +00:00
TheSpad 1dbeb4a006 Add imagemagick-svg 2024-03-22 12:04:09 +00:00
LinuxServer-CI 6785c9836e Bot Updating Package Versions 2024-03-19 11:55:26 +00:00
LinuxServer-CI 2313c84a2f Bot Updating Templated Files 2024-03-19 11:50:23 +00:00
LinuxServer-CI f390f10da9 Bot Updating Package Versions 2024-03-11 16:33:01 +00:00
LinuxServer-CI 12ac2da8ea Bot Updating Templated Files 2024-03-11 16:26:23 +00:00
Eric Nemchik a7c3e50f35 Rebase to Alpine 3.19 (#398)
* Rebase to Alpine 3.19

Signed-off-by: Eric Nemchik <eric@nemchik.com>

* update date and edge repo

---------

Signed-off-by: Eric Nemchik <eric@nemchik.com>
Co-authored-by: aptalca <541623+aptalca@users.noreply.github.com>
2024-03-11 12:24:35 -04:00
LinuxServer-CI 831ce18af1 Bot Updating Package Versions 2024-03-01 17:43:10 +00:00
LinuxServer-CI 787055f100 Bot Updating Package Versions 2024-02-27 11:56:04 +00:00
LinuxServer-CI a5387e7e93 Bot Updating Templated Files 2024-02-27 11:50:52 +00:00
LinuxServer-CI a433a93be4 Bot Updating Templated Files 2024-02-27 11:49:18 +00:00
LinuxServer-CI 2fe4e7f4dd Bot Updating Package Versions 2024-02-20 11:55:16 +00:00
LinuxServer-CI c5113c09c3 Bot Updating Package Versions 2024-02-13 11:50:31 +00:00
LinuxServer-CI 975e20b305 Bot Updating Package Versions 2024-02-05 18:53:13 +00:00
LinuxServer-CI a9a42c6dd3 Bot Updating Templated Files 2024-02-05 18:49:17 +00:00
driz e610ba336a Merge pull request #413 from linuxserver/drizuid-patch-1
Update readme-vars.yml
2024-02-05 13:46:59 -05:00
driz c132755dc2 Update readme-vars.yml 2024-02-05 13:30:49 -05:00
LinuxServer-CI 9e19c87fb6 Bot Updating Package Versions 2024-01-30 11:53:33 +00:00
LinuxServer-CI 195b4b9f84 Bot Updating Package Versions 2024-01-23 11:50:42 +00:00
LinuxServer-CI 3df9fb301a Bot Updating Package Versions 2024-01-16 11:56:53 +00:00
LinuxServer-CI 643222817f Bot Updating Templated Files 2024-01-16 11:51:37 +00:00
LinuxServer-CI cd1f5c8f3e Bot Updating Templated Files 2024-01-16 11:50:04 +00:00
LinuxServer-CI 2d4551b309 Bot Updating Package Versions 2024-01-09 11:55:21 +00:00
Eric Nemchik 360dce038d Merge pull request #405 from linuxserver/conf-fix-test
maybe fix nextcloud?
2024-01-03 17:43:17 -06:00
driz ca6cd4b47e fix sed and add whitespace 2024-01-03 15:49:22 -05:00
driz 4030be8278 swap application/javascript to text/javascript per rfc 2024-01-03 13:41:56 -05:00
driz 6b9d8e456a try again 2024-01-03 13:15:26 -05:00
driz 760894a4fb update date 2024-01-03 11:46:33 -05:00
driz 2d7a5594b7 fix typo 2024-01-03 11:46:11 -05:00
driz 8cff1cf999 maybe fix nextcloud? 2024-01-03 11:16:21 -05:00
LinuxServer-CI 883ffed0d8 Bot Updating Templated Files 2024-01-02 16:12:18 +00:00
Eric Nemchik 6a22255425 Merge pull request #401 from linuxserver/nginx-cleanup
Cleanup default site conf
2024-01-02 10:10:03 -06:00
Eric Nemchik 4e037eca94 Update readme date
Signed-off-by: GitHub <noreply@github.com>
2024-01-02 16:07:43 +00:00
LinuxServer-CI 210ce02e22 Bot Updating Package Versions 2024-01-02 11:52:26 +00:00
Eric Nemchik 144d576909 Cleanup default site conf
Signed-off-by: Eric Nemchik <eric@nemchik.com>
2023-12-25 14:20:36 -06:00
Adam 9895069283 Merge pull request #395 from linuxserver/master-mime
Avoid duplicate mime definition
2023-12-22 22:39:22 +00:00
TheSpad ca1ef7f8aa Use text/javascript as per rfc9239 2023-12-22 17:15:42 +00:00
TheSpad 1dc7711ecb Prefer application/javascript 2023-12-22 17:07:51 +00:00
TheSpad 35de5f814c Avoid duplicate mime definition 2023-12-22 16:59:16 +00:00
LinuxServer-CI 9f23faeab3 Bot Updating Package Versions 2023-12-22 16:03:07 +00:00
LinuxServer-CI 22f9e84444 Bot Updating Templated Files 2023-12-22 15:59:11 +00:00
Adam 1b0600d3cc Fix duplicate header 2023-12-22 15:58:41 +00:00
Adam 20c6337958 Merge pull request #392 from calvin-li-developer/dev
sync nginx conf with upstream nextcloud docs
2023-12-22 15:57:34 +00:00
Calvin Li 07a04516b1 revert fastcgi_pass/php-handler change 2023-12-22 10:34:32 -05:00
Calvin Li 5abf9b3d36 Update readme-vars.yml 2023-12-22 09:54:33 -05:00
Calvin Li 1a559c9893 Update readme-vars.yml 2023-12-22 09:49:06 -05:00
Calvin Li fa511a6f7b Update readme-vars.yml 2023-12-22 09:45:45 -05:00
Calvin Li ceb60ef76b sync with upstream nextcloud docs. closes #391 2023-12-22 09:39:56 -05:00
LinuxServer-CI ba7913a764 Bot Updating Package Versions 2023-12-12 12:51:00 +00:00
LinuxServer-CI d3698ce2e6 Bot Updating Package Versions 2023-12-12 11:52:16 +00:00
LinuxServer-CI c2d8366bfb Bot Updating Package Versions 2023-12-05 11:54:19 +00:00
Eric Nemchik 052617f0b8 Merge pull request #382 from linuxserver/quiet-migration
only run migration if conf exists
2023-11-29 08:30:49 -06:00
LinuxServer-CI fa870cb93c Bot Updating Package Versions 2023-11-28 11:50:53 +00:00
Eric Nemchik 47204a2368 only run migration if conf exists
redirect stderr to /dev/null

Signed-off-by: Eric Nemchik <eric@nemchik.com>
2023-11-25 10:43:10 -06:00
LinuxServer-CI 11aedff334 Bot Updating Package Versions 2023-11-23 20:34:09 +00:00
LinuxServer-CI 04b088162e Bot Updating Package Versions 2023-11-21 11:50:07 +00:00
LinuxServer-CI 41ed12bc46 Bot Updating Package Versions 2023-11-19 01:14:13 +00:00
LinuxServer-CI 9e8419179c Bot Updating Templated Files 2023-11-19 01:10:36 +00:00
Eric Nemchik 56206810af Merge pull request #343 from linuxserver/standard-cron
standard cron master
2023-11-18 19:09:03 -06:00
LinuxServer-CI 0794dc7b87 Bot Updating Package Versions 2023-11-13 22:39:31 +00:00
aptalca 7e18efc6d5 Merge pull request #379 from linuxserver/mcrypt
install mcrypt from community repo on alpine edge
2023-11-13 17:35:56 -05:00
aptalca 4636a2ef5f install mcrypt from community repo on alpine edge 2023-11-13 17:03:44 -05:00
LinuxServer-CI bb421a0d33 Bot Updating Package Versions 2023-11-07 11:51:02 +00:00
LinuxServer-CI fd22973a29 Bot Updating Templated Files 2023-10-28 19:54:45 +00:00
Eric Nemchik 186e5194f5 Merge pull request #375 from linuxserver/disable-web-upgrade-master
Disable web upgrades using occ during init master
2023-10-28 14:53:07 -05:00
Eric Nemchik 7e18f6f27d Disable web upgrades using occ during init
Signed-off-by: Eric Nemchik <eric@nemchik.com>
2023-10-28 14:24:11 -05:00
LinuxServer-CI b7d9f30b0d Bot Updating Package Versions 2023-10-28 15:33:13 +00:00
LinuxServer-CI 64922d3839 Bot Updating Package Versions 2023-10-24 11:50:26 +00:00
LinuxServer-CI 05e5c8363a Bot Updating Package Versions 2023-10-17 11:52:30 +00:00
LinuxServer-CI 2ecd6cb8d9 Bot Updating Package Versions 2023-10-10 11:54:26 +00:00
LinuxServer-CI 1cce29259a Bot Updating Templated Files 2023-10-10 11:50:44 +00:00
LinuxServer-CI 8e3018012d Bot Updating Templated Files 2023-10-10 11:49:16 +00:00
LinuxServer-CI 12810033bf Bot Updating Package Versions 2023-09-29 00:39:44 +00:00
Eric Nemchik 5f37ac0862 Merge pull request #358 from linuxserver/updatenotification-app
Re-add updatenotification app
2023-09-28 19:35:41 -05:00
LinuxServer-CI b92694d865 Bot Updating Package Versions 2023-09-26 11:50:26 +00:00
LinuxServer-CI 6f2ac537d5 Bot Updating Package Versions 2023-09-21 10:37:14 +00:00
quietsy 3accfcac32 Merge pull request #364 from linuxserver/fix-lsiown
Fix lsiown -R order
2023-09-18 17:01:45 +03:00
quietsy c93fe11b13 Fix lsiown -R order 2023-09-18 16:38:05 +03:00
LinuxServer-CI 330bf2caca Bot Updating Package Versions 2023-09-16 09:34:06 +00:00
LinuxServer-CI 9ac9165b38 Bot Updating Package Versions 2023-09-12 11:56:00 +00:00
LinuxServer-CI a116d0836b Bot Updating Package Versions 2023-09-05 11:52:55 +00:00
Eric Nemchik 2e9769050c Re-add updatenotification app
Closes https://github.com/linuxserver/docker-nextcloud/issues/356

Signed-off-by: GitHub <noreply@github.com>
2023-08-31 13:59:44 +00:00
LinuxServer-CI 76d3af10c2 Bot Updating Package Versions 2023-08-29 11:53:09 +00:00
LinuxServer-CI 87ab71daba Bot Updating Package Versions 2023-08-22 11:52:44 +00:00
LinuxServer-CI 8263ebe714 Bot Updating Package Versions 2023-08-15 11:57:27 +00:00
LinuxServer-CI 61cacaaa92 Bot Updating Package Versions 2023-08-15 11:52:26 +00:00
quietsy 1585ba556b Merge pull request #354 from linuxserver/master-develop
Add the develop tag to the readme
2023-08-15 10:54:46 +03:00
quietsy 8e868b8471 Add the develop tag to the readme 2023-08-15 10:21:47 +03:00
13 changed files with 296 additions and 163 deletions
+2 -2
View File
@@ -24,7 +24,7 @@
## Readme
If you would like to change our readme, please __**do not**__ directly edit the readme, as it is auto-generated on each commit.
Instead edit the [readme-vars.yml](https://github.com/linuxserver/docker-nextcloud/edit/develop/readme-vars.yml).
Instead edit the [readme-vars.yml](https://github.com/linuxserver/docker-nextcloud/edit/master/readme-vars.yml).
These variables are used in a template for our [Jenkins Builder](https://github.com/linuxserver/docker-jenkins-builder) as part of an ansible play.
Most of these variables are also carried over to [docs.linuxserver.io](https://docs.linuxserver.io/images/docker-nextcloud)
@@ -115,7 +115,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
## Update the changelog
If you are modifying the Dockerfiles or any of the startup scripts in [root](https://github.com/linuxserver/docker-nextcloud/tree/develop/root), add an entry to the changelog
If you are modifying the Dockerfiles or any of the startup scripts in [root](https://github.com/linuxserver/docker-nextcloud/tree/master/root), add an entry to the changelog
```yml
changelogs:
+1 -1
View File
@@ -21,7 +21,7 @@
------------------------------
- [ ] I have read the [contributing](https://github.com/linuxserver/docker-nextcloud/blob/develop/.github/CONTRIBUTING.md) guideline and understand that I have made the correct modifications
- [ ] I have read the [contributing](https://github.com/linuxserver/docker-nextcloud/blob/master/.github/CONTRIBUTING.md) guideline and understand that I have made the correct modifications
------------------------------
+14 -14
View File
@@ -4,26 +4,26 @@ on:
workflow_dispatch:
jobs:
external-trigger-develop:
external-trigger-master:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4.1.1
- name: External Trigger
if: github.ref == 'refs/heads/develop'
if: github.ref == 'refs/heads/master'
run: |
if [ -n "${{ secrets.PAUSE_EXTERNAL_TRIGGER_NEXTCLOUD_DEVELOP }}" ]; then
echo "**** Github secret PAUSE_EXTERNAL_TRIGGER_NEXTCLOUD_DEVELOP is set; skipping trigger. ****"
echo "Github secret \`PAUSE_EXTERNAL_TRIGGER_NEXTCLOUD_DEVELOP\` is set; skipping trigger." >> $GITHUB_STEP_SUMMARY
if [ -n "${{ secrets.PAUSE_EXTERNAL_TRIGGER_NEXTCLOUD_MASTER }}" ]; then
echo "**** Github secret PAUSE_EXTERNAL_TRIGGER_NEXTCLOUD_MASTER is set; skipping trigger. ****"
echo "Github secret \`PAUSE_EXTERNAL_TRIGGER_NEXTCLOUD_MASTER\` is set; skipping trigger." >> $GITHUB_STEP_SUMMARY
exit 0
fi
echo "**** External trigger running off of develop branch. To disable this trigger, set a Github secret named \"PAUSE_EXTERNAL_TRIGGER_NEXTCLOUD_DEVELOP\". ****"
echo "External trigger running off of develop branch. To disable this trigger, set a Github secret named \`PAUSE_EXTERNAL_TRIGGER_NEXTCLOUD_DEVELOP\`" >> $GITHUB_STEP_SUMMARY
echo "**** External trigger running off of master branch. To disable this trigger, set a Github secret named \"PAUSE_EXTERNAL_TRIGGER_NEXTCLOUD_MASTER\". ****"
echo "External trigger running off of master branch. To disable this trigger, set a Github secret named \`PAUSE_EXTERNAL_TRIGGER_NEXTCLOUD_MASTER\`" >> $GITHUB_STEP_SUMMARY
echo "**** Retrieving external version ****"
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)
if [ -z "${EXT_RELEASE}" ] || [ "${EXT_RELEASE}" == "null" ]; then
echo "**** Can't retrieve external version, exiting ****"
FAILURE_REASON="Can't retrieve external version for nextcloud branch develop"
FAILURE_REASON="Can't retrieve external version for nextcloud branch master"
GHA_TRIGGER_URL="https://github.com/linuxserver/docker-nextcloud/actions/runs/${{ github.run_id }}"
curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://cdn.discordapp.com/avatars/354986384542662657/df91181b3f1cf0ef1592fbe18e0962d7.png","embeds": [{"color": 16711680,
"description": "**Trigger Failed** \n**Reason:** '"${FAILURE_REASON}"' \n**Trigger URL:** '"${GHA_TRIGGER_URL}"' \n"}],
@@ -35,7 +35,7 @@ jobs:
echo "External version: ${EXT_RELEASE}" >> $GITHUB_STEP_SUMMARY
echo "**** Retrieving last pushed version ****"
image="linuxserver/nextcloud"
tag="develop"
tag="latest"
token=$(curl -sX GET \
"https://ghcr.io/token?scope=repository%3Alinuxserver%2Fnextcloud%3Apull" \
| jq -r '.token')
@@ -61,7 +61,7 @@ jobs:
IMAGE_VERSION=$(echo ${IMAGE_RELEASE} | awk -F'-ls' '{print $1}')
if [ -z "${IMAGE_VERSION}" ]; then
echo "**** Can't retrieve last pushed version, exiting ****"
FAILURE_REASON="Can't retrieve last pushed version for nextcloud tag develop"
FAILURE_REASON="Can't retrieve last pushed version for nextcloud tag latest"
curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://cdn.discordapp.com/avatars/354986384542662657/df91181b3f1cf0ef1592fbe18e0962d7.png","embeds": [{"color": 16711680,
"description": "**Trigger Failed** \n**Reason:** '"${FAILURE_REASON}"' \n"}],
"username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }}
@@ -73,7 +73,7 @@ jobs:
echo "**** Version ${EXT_RELEASE} already pushed, exiting ****"
echo "Version ${EXT_RELEASE} already pushed, exiting" >> $GITHUB_STEP_SUMMARY
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/master/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 ****"
echo "New version ${EXT_RELEASE} found; but there already seems to be an active build on Jenkins; exiting" >> $GITHUB_STEP_SUMMARY
exit 0
@@ -81,7 +81,7 @@ jobs:
echo "**** New version ${EXT_RELEASE} found; old version was ${IMAGE_VERSION}. Triggering new build ****"
echo "New version ${EXT_RELEASE} found; old version was ${IMAGE_VERSION}. Triggering new build" >> $GITHUB_STEP_SUMMARY
response=$(curl -iX POST \
https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-nextcloud/job/develop/buildWithParameters?PACKAGE_CHECK=false \
https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-nextcloud/job/master/buildWithParameters?PACKAGE_CHECK=false \
--user ${{ secrets.JENKINS_USER }}:${{ secrets.JENKINS_TOKEN }} | grep -i location | sed "s|^[L|l]ocation: \(.*\)|\1|")
echo "**** Jenkins job queue url: ${response%$'\r'} ****"
echo "**** Sleeping 10 seconds until job starts ****"
@@ -97,7 +97,7 @@ jobs:
--data-urlencode "description=GHA external trigger https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}" \
--data-urlencode "Submit=Submit"
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 latest. Old version:${IMAGE_VERSION} New version:${EXT_RELEASE}"
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"}],
"username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }}
+1 -1
View File
@@ -9,5 +9,5 @@ jobs:
- uses: actions/first-interaction@v1
with:
issue-message: 'Thanks for opening your first issue here! Be sure to follow the relevant issue templates, or risk having this issue marked as invalid.'
pr-message: 'Thanks for opening this pull request! Be sure to follow the [pull request template](https://github.com/linuxserver/docker-nextcloud/blob/develop/.github/PULL_REQUEST_TEMPLATE.md)!'
pr-message: 'Thanks for opening this pull request! Be sure to follow the [pull request template](https://github.com/linuxserver/docker-nextcloud/blob/master/.github/PULL_REQUEST_TEMPLATE.md)!'
repo-token: ${{ secrets.GITHUB_TOKEN }}
+9 -9
View File
@@ -4,28 +4,28 @@ on:
workflow_dispatch:
jobs:
package-trigger-develop:
package-trigger-master:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4.1.1
- name: Package Trigger
if: github.ref == 'refs/heads/develop'
if: github.ref == 'refs/heads/master'
run: |
if [ -n "${{ secrets.PAUSE_PACKAGE_TRIGGER_NEXTCLOUD_DEVELOP }}" ]; then
echo "**** Github secret PAUSE_PACKAGE_TRIGGER_NEXTCLOUD_DEVELOP is set; skipping trigger. ****"
echo "Github secret \`PAUSE_PACKAGE_TRIGGER_NEXTCLOUD_DEVELOP\` is set; skipping trigger." >> $GITHUB_STEP_SUMMARY
if [ -n "${{ secrets.PAUSE_PACKAGE_TRIGGER_NEXTCLOUD_MASTER }}" ]; then
echo "**** Github secret PAUSE_PACKAGE_TRIGGER_NEXTCLOUD_MASTER is set; skipping trigger. ****"
echo "Github secret \`PAUSE_PACKAGE_TRIGGER_NEXTCLOUD_MASTER\` is set; skipping trigger." >> $GITHUB_STEP_SUMMARY
exit 0
fi
if [ $(curl -s https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-nextcloud/job/develop/lastBuild/api/json | jq -r '.building') == "true" ]; then
if [ $(curl -s https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-nextcloud/job/master/lastBuild/api/json | jq -r '.building') == "true" ]; then
echo "**** There already seems to be an active build on Jenkins; skipping package trigger ****"
echo "There already seems to be an active build on Jenkins; skipping package trigger" >> $GITHUB_STEP_SUMMARY
exit 0
fi
echo "**** Package trigger running off of develop branch. To disable, set a Github secret named \"PAUSE_PACKAGE_TRIGGER_NEXTCLOUD_DEVELOP\". ****"
echo "Package trigger running off of develop branch. To disable, set a Github secret named \`PAUSE_PACKAGE_TRIGGER_NEXTCLOUD_DEVELOP\`" >> $GITHUB_STEP_SUMMARY
echo "**** Package trigger running off of master branch. To disable, set a Github secret named \"PAUSE_PACKAGE_TRIGGER_NEXTCLOUD_MASTER\". ****"
echo "Package trigger running off of master branch. To disable, set a Github secret named \`PAUSE_PACKAGE_TRIGGER_NEXTCLOUD_MASTER\`" >> $GITHUB_STEP_SUMMARY
response=$(curl -iX POST \
https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-nextcloud/job/develop/buildWithParameters?PACKAGE_CHECK=true \
https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-nextcloud/job/master/buildWithParameters?PACKAGE_CHECK=true \
--user ${{ secrets.JENKINS_USER }}:${{ secrets.JENKINS_TOKEN }} | grep -i location | sed "s|^[L|l]ocation: \(.*\)|\1|")
echo "**** Jenkins job queue url: ${response%$'\r'} ****"
echo "**** Sleeping 10 seconds until job starts ****"
+6 -2
View File
@@ -18,6 +18,9 @@ RUN \
ffmpeg \
gnu-libiconv \
imagemagick \
imagemagick-heic \
imagemagick-pdf \
imagemagick-svg \
libxml2 \
php83-apcu \
php83-bcmath \
@@ -47,6 +50,7 @@ RUN \
php83-xmlreader \
rsync \
samba-client \
util-linux \
sudo && \
apk add --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community \
php83-pecl-mcrypt && \
@@ -82,12 +86,12 @@ RUN \
/app/www/src/ && \
if [ -z ${NEXTCLOUD_RELEASE+x} ]; then \
NEXTCLOUD_RELEASE=$(curl -sX GET https://api.github.com/repos/nextcloud/server/releases \
| jq -r '.[] | select(.prerelease == true) | .tag_name' \
| jq -r '.[] | select(.prerelease != true) | .tag_name' \
| sed 's|^v||g' | sort -rV | head -1); \
fi && \
curl -o \
/tmp/nextcloud.tar.bz2 -L \
https://download.nextcloud.com/server/prereleases/nextcloud-${NEXTCLOUD_RELEASE}.tar.bz2 && \
https://download.nextcloud.com/server/releases/nextcloud-${NEXTCLOUD_RELEASE}.tar.bz2 && \
tar xf /tmp/nextcloud.tar.bz2 -C \
/app/www/src --strip-components=1 && \
rm -rf /app/www/src/updater && \
+6 -2
View File
@@ -18,6 +18,9 @@ RUN \
ffmpeg \
gnu-libiconv \
imagemagick \
imagemagick-heic \
imagemagick-pdf \
imagemagick-svg \
libxml2 \
php83-apcu \
php83-bcmath \
@@ -47,6 +50,7 @@ RUN \
php83-xmlreader \
rsync \
samba-client \
util-linux \
sudo && \
apk add --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community \
php83-pecl-mcrypt && \
@@ -82,12 +86,12 @@ RUN \
/app/www/src/ && \
if [ -z ${NEXTCLOUD_RELEASE+x} ]; then \
NEXTCLOUD_RELEASE=$(curl -sX GET https://api.github.com/repos/nextcloud/server/releases \
| jq -r '.[] | select(.prerelease == true) | .tag_name' \
| jq -r '.[] | select(.prerelease != true) | .tag_name' \
| sed 's|^v||g' | sort -rV | head -1); \
fi && \
curl -o \
/tmp/nextcloud.tar.bz2 -L \
https://download.nextcloud.com/server/prereleases/nextcloud-${NEXTCLOUD_RELEASE}.tar.bz2 && \
https://download.nextcloud.com/server/releases/nextcloud-${NEXTCLOUD_RELEASE}.tar.bz2 && \
tar xf /tmp/nextcloud.tar.bz2 -C \
/app/www/src --strip-components=1 && \
rm -rf /app/www/src/updater && \
Vendored
+69 -71
View File
@@ -48,7 +48,7 @@ pipeline {
script{
env.EXIT_STATUS = ''
env.LS_RELEASE = sh(
script: '''docker run --rm quay.io/skopeo/stable:v1 inspect docker://ghcr.io/${LS_USER}/${CONTAINER_NAME}:develop 2>/dev/null | jq -r '.Labels.build_version' | awk '{print $3}' | grep '\\-ls' || : ''',
script: '''docker run --rm quay.io/skopeo/stable:v1 inspect docker://ghcr.io/${LS_USER}/${CONTAINER_NAME}:latest 2>/dev/null | jq -r '.Labels.build_version' | awk '{print $3}' | grep '\\-ls' || : ''',
returnStdout: true).trim()
env.LS_RELEASE_NOTES = sh(
script: '''cat readme-vars.yml | awk -F \\" '/date: "[0-9][0-9].[0-9][0-9].[0-9][0-9]:/ {print $4;exit;}' | sed -E ':a;N;$!ba;s/\\r{0,1}\\n/\\\\n/g' ''',
@@ -77,7 +77,7 @@ pipeline {
script{
env.LS_TAG_NUMBER = sh(
script: '''#! /bin/bash
tagsha=$(git rev-list -n 1 develop-${LS_RELEASE} 2>/dev/null)
tagsha=$(git rev-list -n 1 ${LS_RELEASE} 2>/dev/null)
if [ "${tagsha}" == "${COMMIT_SHA}" ]; then
echo ${LS_RELEASE_NUMBER}
elif [ -z "${GIT_COMMIT}" ]; then
@@ -115,7 +115,7 @@ pipeline {
steps{
script{
env.EXT_RELEASE = sh(
script: ''' curl -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 ''',
script: ''' curl -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 ''',
returnStdout: true).trim()
env.RELEASE_LINK = 'custom_command'
}
@@ -155,10 +155,10 @@ pipeline {
}
}
}
// If this is a develop build use live docker endpoints
// If this is a master build use live docker endpoints
stage("Set ENV live build"){
when {
branch "develop"
branch "master"
environment name: 'CHANGE_ID', value: ''
}
steps {
@@ -168,20 +168,20 @@ pipeline {
env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/' + env.CONTAINER_NAME
env.QUAYIMAGE = 'quay.io/linuxserver.io/' + env.CONTAINER_NAME
if (env.MULTIARCH == 'true') {
env.CI_TAGS = 'amd64-develop-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER + '|arm64v8-develop-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
env.CI_TAGS = 'amd64-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER + '|arm64v8-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
} else {
env.CI_TAGS = 'develop-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
env.CI_TAGS = env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
}
env.VERSION_TAG = env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
env.META_TAG = 'develop-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
env.EXT_RELEASE_TAG = 'develop-version-' + env.EXT_RELEASE_CLEAN
env.META_TAG = env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
env.EXT_RELEASE_TAG = 'version-' + env.EXT_RELEASE_CLEAN
}
}
}
// If this is a dev build use dev docker endpoints
stage("Set ENV dev build"){
when {
not {branch "develop"}
not {branch "master"}
environment name: 'CHANGE_ID', value: ''
}
steps {
@@ -191,13 +191,13 @@ pipeline {
env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/lsiodev-' + env.CONTAINER_NAME
env.QUAYIMAGE = 'quay.io/linuxserver.io/lsiodev-' + env.CONTAINER_NAME
if (env.MULTIARCH == 'true') {
env.CI_TAGS = 'amd64-develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '|arm64v8-develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
env.CI_TAGS = 'amd64-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '|arm64v8-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
} else {
env.CI_TAGS = 'develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
env.CI_TAGS = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
}
env.VERSION_TAG = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
env.META_TAG = 'develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
env.EXT_RELEASE_TAG = 'develop-version-' + env.EXT_RELEASE_CLEAN
env.META_TAG = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
env.EXT_RELEASE_TAG = 'version-' + env.EXT_RELEASE_CLEAN
env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.DEV_DOCKERHUB_IMAGE + '/tags/'
}
}
@@ -214,13 +214,13 @@ pipeline {
env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/lspipepr-' + env.CONTAINER_NAME
env.QUAYIMAGE = 'quay.io/linuxserver.io/lspipepr-' + env.CONTAINER_NAME
if (env.MULTIARCH == 'true') {
env.CI_TAGS = 'amd64-develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST + '|arm64v8-develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
env.CI_TAGS = 'amd64-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST + '|arm64v8-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
} else {
env.CI_TAGS = 'develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
env.CI_TAGS = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
}
env.VERSION_TAG = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
env.META_TAG = 'develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
env.EXT_RELEASE_TAG = 'develop-version-' + env.EXT_RELEASE_CLEAN
env.META_TAG = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
env.EXT_RELEASE_TAG = 'version-' + env.EXT_RELEASE_CLEAN
env.CODE_URL = 'https://github.com/' + env.LS_USER + '/' + env.LS_REPO + '/pull/' + env.PULL_REQUEST
env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.PR_DOCKERHUB_IMAGE + '/tags/'
}
@@ -257,7 +257,7 @@ pipeline {
// Use helper containers to render templated files
stage('Update-Templates') {
when {
branch "develop"
branch "master"
environment name: 'CHANGE_ID', value: ''
expression {
env.CONTAINER_NAME != null
@@ -269,24 +269,24 @@ pipeline {
TEMPDIR=$(mktemp -d)
docker pull ghcr.io/linuxserver/jenkins-builder:latest
# Cloned repo paths for templating:
# ${TEMPDIR}/docker-${CONTAINER_NAME}: Cloned branch develop of ${LS_USER}/${LS_REPO} for running the jenkins builder on
# ${TEMPDIR}/repo/${LS_REPO}: Cloned branch develop of ${LS_USER}/${LS_REPO} for commiting various templated file changes and pushing back to Github
# ${TEMPDIR}/docker-${CONTAINER_NAME}: Cloned branch master of ${LS_USER}/${LS_REPO} for running the jenkins builder on
# ${TEMPDIR}/repo/${LS_REPO}: Cloned branch master of ${LS_USER}/${LS_REPO} for commiting various templated file changes and pushing back to Github
# ${TEMPDIR}/docs/docker-documentation: Cloned docs repo for pushing docs updates to Github
# ${TEMPDIR}/unraid/docker-templates: Cloned docker-templates repo to check for logos
# ${TEMPDIR}/unraid/templates: Cloned templates repo for commiting unraid template changes and pushing back to Github
git clone --branch develop --depth 1 https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/docker-${CONTAINER_NAME}
git clone --branch master --depth 1 https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/docker-${CONTAINER_NAME}
docker run --rm -v ${TEMPDIR}/docker-${CONTAINER_NAME}:/tmp -e LOCAL=true -e PUID=$(id -u) -e PGID=$(id -g) ghcr.io/linuxserver/jenkins-builder:latest
echo "Starting Stage 1 - Jenkinsfile update"
if [[ "$(md5sum Jenkinsfile | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/Jenkinsfile | awk '{ print $1 }')" ]]; then
mkdir -p ${TEMPDIR}/repo
git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/repo/${LS_REPO}
cd ${TEMPDIR}/repo/${LS_REPO}
git checkout -f develop
git checkout -f master
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/Jenkinsfile ${TEMPDIR}/repo/${LS_REPO}/
git add Jenkinsfile
git commit -m 'Bot Updating Templated Files'
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
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git master
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git master
echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
echo "Updating Jenkinsfile and exiting build, new one will trigger based on commit"
rm -Rf ${TEMPDIR}
@@ -305,13 +305,13 @@ pipeline {
mkdir -p ${TEMPDIR}/repo
git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/repo/${LS_REPO}
cd ${TEMPDIR}/repo/${LS_REPO}
git checkout -f develop
git checkout -f master
for i in ${TEMPLATES_TO_DELETE}; do
git rm "${i}"
done
git commit -m 'Bot Updating Templated Files'
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
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git master
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git master
echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
echo "Deleting old/deprecated templates and exiting build, new one will trigger based on commit"
rm -Rf ${TEMPDIR}
@@ -327,7 +327,7 @@ pipeline {
mkdir -p ${TEMPDIR}/repo
git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/repo/${LS_REPO}
cd ${TEMPDIR}/repo/${LS_REPO}
git checkout -f develop
git checkout -f master
cd ${TEMPDIR}/docker-${CONTAINER_NAME}
mkdir -p ${TEMPDIR}/repo/${LS_REPO}/.github/workflows
mkdir -p ${TEMPDIR}/repo/${LS_REPO}/.github/ISSUE_TEMPLATE
@@ -340,8 +340,8 @@ pipeline {
fi
git add readme-vars.yml ${TEMPLATED_FILES}
git commit -m 'Bot Updating Templated Files'
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
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git master
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git master
echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
echo "Updating templates and exiting build, new one will trigger based on commit"
rm -Rf ${TEMPDIR}
@@ -381,16 +381,14 @@ pipeline {
echo "Updating Unraid template"
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
if [[ -f ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml ]]; 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/
git add -u unraid/${CONTAINER_NAME}.xml
git mv unraid/${CONTAINER_NAME}.xml unraid/deprecated/${CONTAINER_NAME}.xml || :
git commit -m 'Bot Moving Deprecated Unraid Template' || :
else
echo "Image is on the ignore list, but no template exist, skipping deprecation"
fi
if grep -wq "${CONTAINER_NAME}" ${TEMPDIR}/unraid/templates/unraid/ignore.list && [[ -f ${TEMPDIR}/unraid/templates/unraid/deprecated/${CONTAINER_NAME}.xml ]]; then
echo "Image is on the ignore list, and already in the deprecation folder."
elif 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/
git add -u unraid/${CONTAINER_NAME}.xml
git mv unraid/${CONTAINER_NAME}.xml unraid/deprecated/${CONTAINER_NAME}.xml || :
git commit -m 'Bot Moving Deprecated Unraid Template' || :
else
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml ${TEMPDIR}/unraid/templates/unraid/
git add unraid/${CONTAINER_NAME}.xml
@@ -444,7 +442,7 @@ pipeline {
// Exit the build if the Templated files were just updated
stage('Template-exit') {
when {
branch "develop"
branch "master"
environment name: 'CHANGE_ID', value: ''
environment name: 'FILES_UPDATED', value: 'true'
expression {
@@ -457,10 +455,10 @@ pipeline {
}
}
}
// If this is a develop build check the S6 service file perms
// If this is a master build check the S6 service file perms
stage("Check S6 Service file Permissions"){
when {
branch "develop"
branch "master"
environment name: 'CHANGE_ID', value: ''
environment name: 'EXIT_STATUS', value: ''
}
@@ -604,7 +602,7 @@ pipeline {
// Take the image we just built and dump package versions for comparison
stage('Update-packages') {
when {
branch "develop"
branch "master"
environment name: 'CHANGE_ID', value: ''
environment name: 'EXIT_STATUS', value: ''
}
@@ -627,14 +625,14 @@ pipeline {
echo "Package tag sha from current packages in buit container is ${NEW_PACKAGE_TAG} comparing to old ${PACKAGE_TAG} from github"
if [ "${NEW_PACKAGE_TAG}" != "${PACKAGE_TAG}" ]; then
git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/${LS_REPO}
git --git-dir ${TEMPDIR}/${LS_REPO}/.git checkout -f develop
git --git-dir ${TEMPDIR}/${LS_REPO}/.git checkout -f master
cp ${TEMPDIR}/package_versions.txt ${TEMPDIR}/${LS_REPO}/
cd ${TEMPDIR}/${LS_REPO}/
wait
git add package_versions.txt
git commit -m 'Bot Updating Package Versions'
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
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git master
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git master
echo "true" > /tmp/packages-${COMMIT_SHA}-${BUILD_NUMBER}
echo "Package tag updated, stopping build process"
else
@@ -652,7 +650,7 @@ pipeline {
// Exit the build if the package file was just updated
stage('PACKAGE-exit') {
when {
branch "develop"
branch "master"
environment name: 'CHANGE_ID', value: ''
environment name: 'PACKAGE_UPDATED', value: 'true'
environment name: 'EXIT_STATUS', value: ''
@@ -666,7 +664,7 @@ pipeline {
// Exit the build if this is just a package check and there are no changes to push
stage('PACKAGECHECK-exit') {
when {
branch "develop"
branch "master"
environment name: 'CHANGE_ID', value: ''
environment name: 'PACKAGE_UPDATED', value: 'false'
environment name: 'EXIT_STATUS', value: ''
@@ -753,12 +751,12 @@ pipeline {
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
for PUSHIMAGE in "${GITHUBIMAGE}" "${GITLABIMAGE}" "${QUAYIMAGE}" "${IMAGE}"; do
docker tag ${IMAGE}:${META_TAG} ${PUSHIMAGE}:${META_TAG}
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:develop
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:latest
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:${EXT_RELEASE_TAG}
if [ -n "${SEMVER}" ]; then
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:${SEMVER}
fi
docker push ${PUSHIMAGE}:develop
docker push ${PUSHIMAGE}:latest
docker push ${PUSHIMAGE}:${META_TAG}
docker push ${PUSHIMAGE}:${EXT_RELEASE_TAG}
if [ -n "${SEMVER}" ]; then
@@ -798,10 +796,10 @@ pipeline {
fi
for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}" "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
docker tag ${IMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG}
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-develop
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-latest
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG}
docker tag ${IMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-develop
docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-latest
docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
if [ -n "${SEMVER}" ]; then
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${SEMVER}
@@ -809,17 +807,17 @@ pipeline {
fi
docker push ${MANIFESTIMAGE}:amd64-${META_TAG}
docker push ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG}
docker push ${MANIFESTIMAGE}:amd64-develop
docker push ${MANIFESTIMAGE}:amd64-latest
docker push ${MANIFESTIMAGE}:arm64v8-${META_TAG}
docker push ${MANIFESTIMAGE}:arm64v8-develop
docker push ${MANIFESTIMAGE}:arm64v8-latest
docker push ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
if [ -n "${SEMVER}" ]; then
docker push ${MANIFESTIMAGE}:amd64-${SEMVER}
docker push ${MANIFESTIMAGE}:arm64v8-${SEMVER}
fi
docker manifest push --purge ${MANIFESTIMAGE}:develop || :
docker manifest create ${MANIFESTIMAGE}:develop ${MANIFESTIMAGE}:amd64-develop ${MANIFESTIMAGE}:arm64v8-develop
docker manifest annotate ${MANIFESTIMAGE}:develop ${MANIFESTIMAGE}:arm64v8-develop --os linux --arch arm64 --variant v8
docker manifest push --purge ${MANIFESTIMAGE}:latest || :
docker manifest create ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:amd64-latest ${MANIFESTIMAGE}:arm64v8-latest
docker manifest annotate ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:arm64v8-latest --os linux --arch arm64 --variant v8
docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG} || :
docker manifest create ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG} --os linux --arch arm64 --variant v8
@@ -835,13 +833,13 @@ pipeline {
digest=$(curl -s \
--header "Accept: application/vnd.docker.distribution.manifest.v2+json" \
--header "Authorization: Bearer ${token}" \
"https://ghcr.io/v2/linuxserver/${CONTAINER_NAME}/manifests/arm32v7-develop")
"https://ghcr.io/v2/linuxserver/${CONTAINER_NAME}/manifests/arm32v7-latest")
if [[ $(echo "$digest" | jq -r '.layers') != "null" ]]; then
docker manifest push --purge ${MANIFESTIMAGE}:arm32v7-develop || :
docker manifest create ${MANIFESTIMAGE}:arm32v7-develop ${MANIFESTIMAGE}:amd64-develop
docker manifest push --purge ${MANIFESTIMAGE}:arm32v7-develop
docker manifest push --purge ${MANIFESTIMAGE}:arm32v7-latest || :
docker manifest create ${MANIFESTIMAGE}:arm32v7-latest ${MANIFESTIMAGE}:amd64-latest
docker manifest push --purge ${MANIFESTIMAGE}:arm32v7-latest
fi
docker manifest push --purge ${MANIFESTIMAGE}:develop
docker manifest push --purge ${MANIFESTIMAGE}:latest
docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG}
docker manifest push --purge ${MANIFESTIMAGE}:${EXT_RELEASE_TAG}
if [ -n "${SEMVER}" ]; then
@@ -856,7 +854,7 @@ pipeline {
// If this is a public release tag it in the LS Github
stage('Github-Tag-Push-Release') {
when {
branch "develop"
branch "master"
expression {
env.LS_RELEASE != env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
}
@@ -868,17 +866,17 @@ pipeline {
sh '''curl -H "Authorization: token ${GITHUB_TOKEN}" -X POST https://api.github.com/repos/${LS_USER}/${LS_REPO}/git/tags \
-d '{"tag":"'${META_TAG}'",\
"object": "'${COMMIT_SHA}'",\
"message": "Tagging Release '${EXT_RELEASE_CLEAN}'-ls'${LS_TAG_NUMBER}' to develop",\
"message": "Tagging Release '${EXT_RELEASE_CLEAN}'-ls'${LS_TAG_NUMBER}' to master",\
"type": "commit",\
"tagger": {"name": "LinuxServer Jenkins","email": "jenkins@linuxserver.io","date": "'${GITHUB_DATE}'"}}' '''
echo "Pushing New release for Tag"
sh '''#! /bin/bash
echo "Updating to ${EXT_RELEASE_CLEAN}" > releasebody.json
echo '{"tag_name":"'${META_TAG}'",\
"target_commitish": "develop",\
"target_commitish": "master",\
"name": "'${META_TAG}'",\
"body": "**LinuxServer Changes:**\\n\\n'${LS_RELEASE_NOTES}'\\n\\n**Remote Changes:**\\n\\n' > start
printf '","draft": false,"prerelease": true}' >> releasebody.json
printf '","draft": false,"prerelease": false}' >> releasebody.json
paste -d'\\0' start releasebody.json > releasebody.json.done
curl -H "Authorization: token ${GITHUB_TOKEN}" -X POST https://api.github.com/repos/${LS_USER}/${LS_REPO}/releases -d @releasebody.json.done'''
}
@@ -886,14 +884,14 @@ pipeline {
// Add protection to the release branch
stage('Github-Release-Branch-Protection') {
when {
branch "develop"
branch "master"
environment name: 'CHANGE_ID', value: ''
environment name: 'EXIT_STATUS', value: ''
}
steps {
echo "Setting up protection for release branch develop"
echo "Setting up protection for release branch master"
sh '''#! /bin/bash
curl -H "Authorization: token ${GITHUB_TOKEN}" -X PUT https://api.github.com/repos/${LS_USER}/${LS_REPO}/branches/develop/protection \
curl -H "Authorization: token ${GITHUB_TOKEN}" -X PUT https://api.github.com/repos/${LS_USER}/${LS_REPO}/branches/master/protection \
-d $(jq -c . << EOF
{
"required_status_checks": null,
+43 -8
View File
@@ -1,5 +1,5 @@
<!-- DO NOT EDIT THIS FILE MANUALLY -->
<!-- Please read https://github.com/linuxserver/docker-nextcloud/blob/develop/.github/CONTRIBUTING.md -->
<!-- Please read https://github.com/linuxserver/docker-nextcloud/blob/master/.github/CONTRIBUTING.md -->
[![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!")
@@ -36,7 +36,7 @@ Find us at:
[![Quay.io](https://img.shields.io/static/v1.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=linuxserver.io&message=Quay.io)](https://quay.io/repository/linuxserver.io/nextcloud)
[![Docker Pulls](https://img.shields.io/docker/pulls/linuxserver/nextcloud.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=pulls&logo=docker)](https://hub.docker.com/r/linuxserver/nextcloud)
[![Docker Stars](https://img.shields.io/docker/stars/linuxserver/nextcloud.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=stars&logo=docker)](https://hub.docker.com/r/linuxserver/nextcloud)
[![Jenkins Build](https://img.shields.io/jenkins/build?labelColor=555555&logoColor=ffffff&style=for-the-badge&jobUrl=https%3A%2F%2Fci.linuxserver.io%2Fjob%2FDocker-Pipeline-Builders%2Fjob%2Fdocker-nextcloud%2Fjob%2Fdevelop%2F&logo=jenkins)](https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-nextcloud/job/develop/)
[![Jenkins Build](https://img.shields.io/jenkins/build?labelColor=555555&logoColor=ffffff&style=for-the-badge&jobUrl=https%3A%2F%2Fci.linuxserver.io%2Fjob%2FDocker-Pipeline-Builders%2Fjob%2Fdocker-nextcloud%2Fjob%2Fmaster%2F&logo=jenkins)](https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-nextcloud/job/master/)
[![LSIO CI](https://img.shields.io/badge/dynamic/yaml?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=CI&query=CI&url=https%3A%2F%2Fci-tests.linuxserver.io%2Flinuxserver%2Fnextcloud%2Flatest%2Fci-status.yml)](https://ci-tests.linuxserver.io/linuxserver/nextcloud/latest/index.html)
[Nextcloud](https://nextcloud.com/) gives you access to all your files wherever you are.
@@ -49,7 +49,7 @@ Where are your photos and documents? With Nextcloud you pick a server of your ch
We utilise the docker manifest for multi-platform awareness. More information is available from docker [here](https://distribution.github.io/distribution/spec/manifest-v2-2/#manifest-list) and our announcement [here](https://blog.linuxserver.io/2019/02/21/the-lsio-pipeline-project/).
Simply pulling `lscr.io/linuxserver/nextcloud:develop` should retrieve the correct image for your arch, but you can also pull specific arch images via tags.
Simply pulling `lscr.io/linuxserver/nextcloud:latest` should retrieve the correct image for your arch, but you can also pull specific arch images via tags.
The architectures supported by this image are:
@@ -72,6 +72,8 @@ This image provides various versions that are available via tags. Please read th
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 is done by pulling the new image, and recreating the container with it.
@@ -86,6 +88,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.
### 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
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:
@@ -112,7 +142,7 @@ To help you get started creating a container from this image you can either use
---
services:
nextcloud:
image: lscr.io/linuxserver/nextcloud:develop
image: lscr.io/linuxserver/nextcloud:latest
container_name: nextcloud
environment:
- PUID=1000
@@ -138,7 +168,7 @@ docker run -d \
-v /path/to/nextcloud/config:/config \
-v /path/to/data:/data \
--restart unless-stopped \
lscr.io/linuxserver/nextcloud:develop
lscr.io/linuxserver/nextcloud:latest
```
## Parameters
@@ -218,7 +248,7 @@ We publish various [Docker Mods](https://github.com/linuxserver/docker-mods) to
* Image version number:
```bash
docker inspect -f '{{ index .Config.Labels "build_version" }}' lscr.io/linuxserver/nextcloud:develop
docker inspect -f '{{ index .Config.Labels "build_version" }}' lscr.io/linuxserver/nextcloud:latest
```
## Updating Info
@@ -266,7 +296,7 @@ Below are the instructions for updating containers:
* Update the image:
```bash
docker pull lscr.io/linuxserver/nextcloud:develop
docker pull lscr.io/linuxserver/nextcloud:latest
```
* Stop the running container:
@@ -302,7 +332,7 @@ cd docker-nextcloud
docker build \
--no-cache \
--pull \
-t lscr.io/linuxserver/nextcloud:develop .
-t lscr.io/linuxserver/nextcloud:latest .
```
The ARM variants can be built on x86_64 hardware using `multiarch/qemu-user-static`
@@ -315,6 +345,11 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
## Versions
* **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.
* **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.
+4 -4
View File
@@ -3,10 +3,10 @@
# jenkins variables
project_name: docker-nextcloud
external_type: na
custom_version_command: "curl -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"
release_type: prerelease
release_tag: develop
ls_branch: develop
custom_version_command: "curl -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"
release_type: stable
release_tag: latest
ls_branch: master
build_armhf: false
repo_vars:
- BUILD_VERSION_ARG = 'NEXTCLOUD_RELEASE'
+97 -48
View File
@@ -2,6 +2,7 @@ NAME VERSION TYPE
@nextcloud/text 3.10.0 npm
Process Wrapper 1.0.0.0 dotnet (+1 duplicate)
activity 2.21.0 npm
agetty 2.39.3-r0 apk
alpine-baselayout 3.4.3-r2 apk
alpine-baselayout-data 3.4.3-r2 apk
alpine-keys 2.4-r1 apk
@@ -26,6 +27,7 @@ argon2-libs 20190702-r5 apk
arrayvec 0.7.2 rust-crate
av-metrics 0.9.0 rust-crate
av1-grain 0.2.2 rust-crate
avahi-libs 0.8-r16 apk
aws/aws-crt-php v1.0.2 php-composer
aws/aws-sdk-php 3.240.8 php-composer
bamarni/composer-bin-plugin 1.8.2 php-composer
@@ -37,6 +39,7 @@ bitstream-io 1.6.0 rust-crate
bitstream-io 1.7.0 rust-crate
bitvec 1.0.1 rust-crate
bitvec_helpers 3.1.2 rust-crate
blkid 2.39.3-r0 apk
brick/math 0.9.2 php-composer
brotli-libs 1.1.0-r1 apk
bruteforcesettings 2.9.0 npm
@@ -46,6 +49,10 @@ c-ares 1.27.0-r0 apk
c-client 2007f-r15 apk
ca-certificates 20240226-r0 apk
ca-certificates-bundle 20240226-r0 apk
cairo 1.18.0-r0 apk
cairo-gobject 1.18.0-r0 apk
catatonit 0.2.0-r0 apk
cfdisk 2.39.3-r0 apk
cfg-if 1.0.0 rust-crate
christian-riesen/base32 1.6.0 php-composer
cjson 1.7.17-r0 apk
@@ -53,7 +60,7 @@ clap 4.0.32 rust-crate
clap_complete 4.0.7 rust-crate
clap_derive 4.0.21 rust-crate
clap_lex 0.3.0 rust-crate
composer 2.7.4 binary
composer 2.7.6 binary
console 0.15.5 rust-crate
coreutils 9.4-r2 apk
coreutils-env 9.4-r2 apk
@@ -67,6 +74,7 @@ crossbeam-deque 0.8.3 rust-crate
crossbeam-epoch 0.9.14 rust-crate
crossbeam-queue 0.3.8 rust-crate
crossbeam-utils 0.8.15 rust-crate
cups-libs 2.4.7-r0 apk
curl 8.5.0-r0 apk
cweagans/composer-patches 1.7.3 php-composer
dbus-libs 1.14.10-r0 apk
@@ -94,19 +102,24 @@ fftw-double-libs 3.3.10-r5 apk
fgrosse/phpasn1 v2.3.0 php-composer
files_downloadlimit 1.1.0 npm
files_pdfviewer 2.10.0 npm
findmnt 2.39.3-r0 apk
findutils 4.9.0-r5 apk
firstrunwizard 2.18.0 npm
flock 2.39.3-r0 apk
fontconfig 2.14.2-r4 apk
freetype 2.13.2-r0 apk
fribidi 1.0.13-r0 apk
fstrim 2.39.3-r0 apk
funty 2.0.0 rust-crate
fusonic/linq v1.1.0 php-composer
fusonic/opengraph v2.2.0 php-composer
gdbm 1.23-r1 apk
gdk-pixbuf 2.42.10-r6 apk
getrandom 0.2.9 rust-crate
ghostscript 10.02.1-r0 apk
giggsey/libphonenumber-for-php-lite 8.13.27 php-composer
git 2.43.0-r0 apk
glib 2.78.4-r0 apk
git 2.43.4-r0 apk
glib 2.78.6-r0 apk
glslang-libs 1.3.261.1-r0 apk
gmp 6.3.0-r0 apk
gnu-libiconv 1.17-r2 apk
@@ -119,6 +132,7 @@ guzzlehttp/psr7 2.6.2 php-compos
guzzlehttp/uri-template v0.2.0 php-composer
harfbuzz 8.3.0-r0 apk
heck 0.4.1 rust-crate
hexdump 2.39.3-r0 apk
hexogen/kdtree v0.2.5 php-composer
hwdata-pci 0.377.2-r0 apk
icewind/searchdav v3.1.0 php-composer
@@ -126,17 +140,23 @@ icewind/smb v3.5.4 php-compos
icewind/streams v0.7.7 php-composer (+1 duplicate)
icu-data-en 74.1-r0 apk
icu-libs 74.1-r0 apk
imagemagick 7.1.1.26-r0 apk
imagemagick-jpeg 7.1.1.26-r0 apk
imagemagick-jxl 7.1.1.26-r0 apk
imagemagick-libs 7.1.1.26-r0 apk
imagemagick-webp 7.1.1.26-r0 apk
imagemagick 7.1.1.32-r0 apk
imagemagick-heic 7.1.1.32-r0 apk
imagemagick-jpeg 7.1.1.32-r0 apk
imagemagick-jxl 7.1.1.32-r0 apk
imagemagick-libs 7.1.1.32-r0 apk
imagemagick-pango 7.1.1.32-r0 apk
imagemagick-pdf 7.1.1.32-r0 apk
imagemagick-svg 7.1.1.32-r0 apk
imagemagick-tiff 7.1.1.32-r0 apk
imagemagick-webp 7.1.1.32-r0 apk
interpolate_name 0.2.3 rust-crate
io-lifetimes 1.0.10 rust-crate
is-terminal 0.4.7 rust-crate
itertools 0.10.5 rust-crate
ivf 0.1.2 rust-crate
jansson 2.14-r4 apk
jbig2dec 0.20-r0 apk
jq 1.7.1-r0 apk
justinrainbow/json-schema v5.2.13 php-composer
kornrunner/blurhash v1.2.2 php-composer
@@ -164,20 +184,25 @@ libbz2 1.0.8-r6 apk
libc 0.2.144 rust-crate
libc 0.2.149 rust-crate
libc-utils 0.7.2-r5 apk
libcap-ng 0.8.3-r4 apk
libcap2 2.69-r1 apk
libcrypto3 3.1.4-r6 apk
libcurl 8.5.0-r0 apk
libdav1d 1.3.0-r1 apk
libde265 1.0.15-r0 apk
libdovi 3.2.0-r1 apk
libdrm 2.4.118-r0 apk
libeconf 0.5.2-r2 apk
libedit 20230828.3.1-r3 apk
libevent 2.1.12-r7 apk
libexpat 2.6.2-r0 apk
libfdisk 2.39.3-r0 apk
libffi 3.4.4-r3 apk
libflac 1.4.3-r1 apk
libformw 6.4_p20231125-r0 apk
libgcc 13.2.1_git20231014-r0 apk
libgomp 13.2.1_git20231014-r0 apk
libheif 1.17.6-r0 apk
libhwy 1.0.7-r0 apk
libice 1.1.1-r5 apk
libidn2 2.3.4-r4 apk
@@ -197,13 +222,15 @@ libpanelw 6.4_p20231125-r0 apk
libpciaccess 0.17-r2 apk
libplacebo 6.338.1-r0 apk
libpng 1.6.40-r0 apk
libpq 16.2-r1 apk
libpq 16.3-r0 apk
libproc2 4.0.4-r0 apk
libpulse 16.1-r11 apk
librist 0.2.10-r0 apk
librsvg 2.57.1-r0 apk
libsasl 2.1.28-r5 apk
libsharpyuv 1.3.2-r0 apk
libsm 1.2.4-r3 apk
libsmartcols 2.39.3-r0 apk
libsmbclient 4.18.9-r0 apk
libsndfile 1.2.2-r0 apk
libsodium 1.0.19-r0 apk
@@ -230,8 +257,10 @@ libxcb 1.16-r0 apk
libxdmcp 1.1.4-r3 apk
libxext 1.3.5-r3 apk
libxfixes 6.0.1-r3 apk
libxft 2.3.8-r2 apk
libxml2 2.11.7-r0 apk
libxpm 3.5.17-r0 apk
libxrender 0.9.11-r4 apk
libxt 1.3.0-r4 apk
libxxhash 0.8.2-r2 apk
libzip 1.10.1-r0 apk
@@ -241,11 +270,15 @@ linux-pam 1.5.3-r7 apk
linux-raw-sys 0.3.7 rust-crate
lmdb 0.9.31-r0 apk
log 0.4.17 rust-crate
logger 2.39.3-r0 apk
logreader 2.14.0 npm
logrotate 3.21.0-r1 apk
losetup 2.39.3-r0 apk
lsblk 2.39.3-r0 apk
lz4-libs 1.9.4-r5 apk
maybe-rayon 0.1.1 rust-crate
mbedtls 2.28.8-r0 apk
mcookie 2.39.3-r0 apk
memchr 2.5.0 rust-crate
memoffset 0.8.0 rust-crate
mexitek/phpcolors v1.0.4 php-composer
@@ -253,6 +286,7 @@ microsoft/azure-storage-blob 1.5.4 php-compos
microsoft/azure-storage-common 1.5.2 php-composer
minimal-lexical 0.2.1 rust-crate
mlocati/ip-lib 1.18.0 php-composer
mount 2.39.3-r0 apk
mpg123-libs 1.32.3-r0 apk
mtdowling/jmespath.php 2.6.1 php-composer
musl 1.2.4_git20230717-r4 apk
@@ -284,6 +318,8 @@ opus 1.4-r0 apk
orc 0.4.34-r0 apk
os_str_bytes 6.5.0 rust-crate
p11-kit 0.25.3-r0 apk
pango 1.51.0-r0 apk
partx 2.39.3-r0 apk
password_policy 1.19.0 npm
paste 1.0.12 rust-crate
pcre 8.45-r3 apk
@@ -297,32 +333,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
php83 8.3.6-r0 apk
php83-bcmath 8.3.6-r0 apk
php83-bz2 8.3.6-r0 apk
php83-common 8.3.6-r0 apk
php83-ctype 8.3.6-r0 apk
php83-curl 8.3.6-r0 apk
php83-dom 8.3.6-r0 apk
php83-exif 8.3.6-r0 apk
php83-fileinfo 8.3.6-r0 apk
php83-fpm 8.3.6-r0 apk
php83-ftp 8.3.6-r0 apk
php83-gd 8.3.6-r0 apk
php83-gmp 8.3.6-r0 apk
php83-iconv 8.3.6-r0 apk
php83-imap 8.3.6-r0 apk
php83-intl 8.3.6-r0 apk
php83-ldap 8.3.6-r0 apk
php83-mbstring 8.3.6-r0 apk
php83-mysqlnd 8.3.6-r0 apk
php83-opcache 8.3.6-r0 apk
php83-openssl 8.3.6-r0 apk
php83-pcntl 8.3.6-r0 apk
php83-pdo 8.3.6-r0 apk
php83-pdo_mysql 8.3.6-r0 apk
php83-pdo_pgsql 8.3.6-r0 apk
php83-pdo_sqlite 8.3.6-r0 apk
php83 8.3.7-r0 apk
php83-bcmath 8.3.7-r0 apk
php83-bz2 8.3.7-r0 apk
php83-common 8.3.7-r0 apk
php83-ctype 8.3.7-r0 apk
php83-curl 8.3.7-r0 apk
php83-dom 8.3.7-r0 apk
php83-exif 8.3.7-r0 apk
php83-fileinfo 8.3.7-r0 apk
php83-fpm 8.3.7-r0 apk
php83-ftp 8.3.7-r0 apk
php83-gd 8.3.7-r0 apk
php83-gmp 8.3.7-r0 apk
php83-iconv 8.3.7-r0 apk
php83-imap 8.3.7-r0 apk
php83-intl 8.3.7-r0 apk
php83-ldap 8.3.7-r0 apk
php83-mbstring 8.3.7-r0 apk
php83-mysqlnd 8.3.7-r0 apk
php83-opcache 8.3.7-r0 apk
php83-openssl 8.3.7-r0 apk
php83-pcntl 8.3.7-r0 apk
php83-pdo 8.3.7-r0 apk
php83-pdo_mysql 8.3.7-r0 apk
php83-pdo_pgsql 8.3.7-r0 apk
php83-pdo_sqlite 8.3.7-r0 apk
php83-pecl-apcu 5.1.23-r0 apk
php83-pecl-igbinary 3.2.15-r0 apk
php83-pecl-imagick 3.7.0-r0 apk
@@ -331,21 +367,23 @@ php83-pecl-memcached 3.2.0-r0 apk
php83-pecl-msgpack 2.2.0-r1 apk
php83-pecl-redis 6.0.2-r0 apk
php83-pecl-smbclient 1.1.1-r0 apk
php83-pgsql 8.3.6-r0 apk
php83-phar 8.3.6-r0 apk
php83-posix 8.3.6-r0 apk
php83-session 8.3.6-r0 apk
php83-simplexml 8.3.6-r0 apk
php83-sockets 8.3.6-r0 apk
php83-sodium 8.3.6-r0 apk
php83-sqlite3 8.3.6-r0 apk
php83-sysvsem 8.3.6-r0 apk
php83-xml 8.3.6-r0 apk
php83-xmlreader 8.3.6-r0 apk
php83-xmlwriter 8.3.6-r0 apk
php83-zip 8.3.6-r0 apk
php83-pgsql 8.3.7-r0 apk
php83-phar 8.3.7-r0 apk
php83-posix 8.3.7-r0 apk
php83-session 8.3.7-r0 apk
php83-simplexml 8.3.7-r0 apk
php83-sockets 8.3.7-r0 apk
php83-sodium 8.3.7-r0 apk
php83-sqlite3 8.3.7-r0 apk
php83-sysvsem 8.3.7-r0 apk
php83-xml 8.3.7-r0 apk
php83-xmlreader 8.3.7-r0 apk
php83-xmlwriter 8.3.7-r0 apk
php83-zip 8.3.7-r0 apk
phpseclib/phpseclib 2.0.47 php-composer
pimple/pimple v3.5.0 php-composer
pixman 0.42.2-r2 apk
pkgconf 2.1.0-r0 apk
popt 1.19-r3 apk
ppv-lite86 0.2.17 rust-crate
privacy 1.13.0 npm
@@ -381,6 +419,7 @@ rsync 3.2.7-r4 apk
rubix/ml dev-chore/bump-flysystem-v2.1.1 php-composer
rubix/tensor 2.2.3 php-composer
rullzer/easytotp v0.1.4 php-composer
runuser 2.39.3-r0 apk
rust_hawktracer 0.7.0 rust-crate
rust_hawktracer_normal_macro 0.4.1 rust-crate
rust_hawktracer_proc_macro 0.4.1 rust-crate
@@ -404,8 +443,12 @@ sdl2 2.28.5-r0 apk
serd-libs 0.32.0-r0 apk
serde 1.0.163 rust-crate
serde_derive 1.0.163 rust-crate
setarch 2.39.3-r0 apk
setpriv 2.39.3-r0 apk
sfdisk 2.39.3-r0 apk
shaderc 2023.7-r0 apk
shadow 4.14.2-r0 apk
shared-mime-info 2.4-r0 apk
signal-hook 0.3.15 rust-crate
signal-hook-registry 1.4.1 rust-crate
simd_helpers 0.1.0 rust-crate
@@ -460,11 +503,16 @@ tevent 0.15.0-r0 apk
thecodingmachine/safe v1.3.3 php-composer
thiserror 1.0.40 rust-crate
thiserror-impl 1.0.40 rust-crate
tiff 4.6.0-r0 apk
twofactor_totp 11.0.0-dev npm
tzdata 2024a-r0 apk
umount 2.39.3-r0 apk
unicode-ident 1.0.8 rust-crate
unicode-width 0.1.10 rust-crate
util-linux 2.39.3-r0 apk
util-linux-misc 2.39.3-r0 apk
utmps-libs 0.1.2.2-r0 apk
uuidgen 2.39.3-r0 apk
v4l-utils-libs 1.24.1-r1 apk
v_frame 0.3.3 rust-crate
vidstab 1.1.1-r0 apk
@@ -475,6 +523,7 @@ wayland-libs-client 1.22.0-r4 apk
web-auth/cose-lib v3.3.9 php-composer
web-auth/metadata-service v3.3.9 php-composer
web-auth/webauthn-lib v3.3.9 php-composer
wipefs 2.39.3-r0 apk
wyz 0.5.1 rust-crate
x264-libs 0.164_git20231001-r0 apk
x265-libs 3.5-r4 apk
+35
View File
@@ -52,6 +52,8 @@ app_setup_block_enabled: true
app_setup_block: |
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 is done by pulling the new image, and recreating the container with it.
@@ -66,6 +68,34 @@ app_setup_block: |
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
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:
@@ -79,6 +109,11 @@ app_setup_block: |
# changelog
changelogs:
- { 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: "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." }
@@ -1,4 +1,4 @@
## Version 2024/01/03 - Changelog: https://github.com/linuxserver/docker-nextcloud/commits/master/root/defaults/nginx/site-confs/default.conf.sample
## Version 2024/04/02 - 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 {
@@ -156,6 +156,14 @@ server {
return 301 /remote.php$request_uri;
}
# Support for the Client Push (notify_push) plugin, needs mod installed https://github.com/linuxserver/docker-mods/tree/nextcloud-notify-push
location ^~ /push/ {
proxy_pass http://127.0.0.1:7867/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
}
location / {
# enable for basic auth
#auth_basic "Restricted";