Compare commits

..

98 Commits

Author SHA1 Message Date
Julius Knorr a972fb3ec0 Merge pull request #468 from Antreesy/fix/noid/rustfs-docs-for-34
fix(s3): adjust rustfs setup documentation
2026-04-09 13:14:54 +02:00
Maksim Sukharev 5dbdeb8500 fix(s3): adjust rustfs setup documentation
- some labels have changed in files_external 1.25.1 -> 1.26.0, had trouble finding them

Signed-off-by: Maksim Sukharev <antreesy.web@gmail.com>
2026-04-09 11:51:28 +02:00
Julius Knorr b27435102d Merge pull request #464 from susnux/fix/av 2026-03-27 18:45:37 +01:00
Ferdinand Thiessen 797e55ecba fix(nextav): update to official clamav image for antivirus
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-03-27 14:40:04 +01:00
Julius Knorr bf71c459b4 Merge pull request #456 from juliusknorr/dependabot/github_actions/docker/login-action-4 2026-03-08 13:48:06 +01:00
Julius Knorr bfeb093df7 Merge pull request #458 from juliusknorr/renovate/docker-setup-buildx-action-4.x 2026-03-08 13:47:15 +01:00
Julius Knorr e8f9260556 Merge pull request #457 from juliusknorr/dependabot/github_actions/docker/setup-qemu-action-4 2026-03-08 13:46:35 +01:00
Julius Knorr 576a0daba1 Merge pull request #460 from juliusknorr/dependabot/github_actions/docker/build-push-action-7 2026-03-08 13:42:10 +01:00
dependabot[bot] 32994d4c7d chore(deps): bump docker/build-push-action from 6 to 7
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6 to 7.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v6...v7)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-06 18:03:14 +00:00
renovate[bot] 1fb6efacfd chore(deps): update docker/setup-buildx-action action to v4 2026-03-05 10:48:14 +00:00
dependabot[bot] c0213f02c7 chore(deps): bump docker/setup-qemu-action from 3 to 4
Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) from 3 to 4.
- [Release notes](https://github.com/docker/setup-qemu-action/releases)
- [Commits](https://github.com/docker/setup-qemu-action/compare/v3...v4)

---
updated-dependencies:
- dependency-name: docker/setup-qemu-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-04 18:03:28 +00:00
dependabot[bot] 2c395031c3 chore(deps): bump docker/login-action from 3 to 4
Bumps [docker/login-action](https://github.com/docker/login-action) from 3 to 4.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v3...v4)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-04 18:03:21 +00:00
Julius Knorr c1505566e1 Merge pull request #448 from grnd-alt/fix/other-dbs-for-nextcloud2
fix: use SQL dialect variable for nextcloud2
2026-02-04 22:22:43 +01:00
Julius Knorr a569a8d63a Merge pull request #447 from saw-jan/fix/auto-install-ext-db
fix: add default database name
2026-02-04 22:13:58 +01:00
Julius Knorr afbce62311 Merge pull request #445 from Antreesy/master
chore: add stable33 support
2026-02-04 22:12:29 +01:00
grnd-alt f1d9156ca3 fix: use SQL dialect variable for nextcloud2
Signed-off-by: grnd-alt <git@belakkaf.net>
2026-02-04 10:37:51 +01:00
Saw-jan ffeba34ed6 fix: add default database name
Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>
2026-02-02 17:15:38 +05:45
Maksim Sukharev a3345508ed chore: add stable33 support
Signed-off-by: Maksim Sukharev <antreesy.web@gmail.com>
2026-01-23 11:34:05 +01:00
Julius Knorr 798f74eed4 docs: Update docs for rustfs instead of minio
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-12-31 10:46:42 +01:00
Julius Knorr 563864a58c fix: Properly auto configure rustfs
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-12-31 10:33:58 +01:00
Julius Knorr a0e60da927 feat: Add rustfs as alternative s3 storage
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-12-30 21:37:18 +01:00
Julius Knorr 622db86820 Merge pull request #435 from juliusknorr/feat/php85
feat/php85
2025-12-18 10:55:01 +01:00
Julius Knorr 2cab524bd4 feat: Add php8.5 container
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-12-18 08:55:02 +01:00
Julius Knorr 5fdf12f3de Merge pull request #440 from juliusknorr/renovate/major-github-artifact-actions
chore(deps): update actions/upload-artifact action to v6
2025-12-18 08:54:51 +01:00
Julius Knorr c00c97b74a Merge pull request #441 from juliusknorr/dependabot/github_actions/actions/upload-artifact-6
chore(deps): bump actions/upload-artifact from 5 to 6
2025-12-18 08:54:41 +01:00
Julius Knorr ee0f0631a2 Merge pull request #437 from CarlSchwan/carl/authentik
feat: Add authentik as a service
2025-12-18 08:54:29 +01:00
dependabot[bot] 9d9ce551e1 chore(deps): bump actions/upload-artifact from 5 to 6
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 5 to 6.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-15 18:08:40 +00:00
renovate[bot] 61a1c0a5c3 chore(deps): update actions/upload-artifact action to v6 2025-12-12 20:37:48 +00:00
Julius Knorr eeb9c09a1c Merge pull request #439 from juliusknorr/dependabot/github_actions/actions/cache-5
chore(deps): bump actions/cache from 4 to 5
2025-12-12 21:37:11 +01:00
dependabot[bot] d2396eedd2 chore(deps): bump actions/cache from 4 to 5
Bumps [actions/cache](https://github.com/actions/cache) from 4 to 5.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-12 18:04:55 +00:00
Carl Schwan 25b8f25826 feat: Add authentik as a service
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-12-08 14:35:22 +01:00
Julius Knorr 6d1785b879 Merge pull request #436 from Bytepie/patch-1
Remove duplicate minio alias from docker-compose
2025-11-26 11:53:56 +01:00
Umer Tahir ff8936271d Remove duplicate minio alias from docker-compose
minio${DOMAIN_SUFFIX} is listed twice in network default aliases which give error when running 'docker-compose up -d nextcloud'
2025-11-26 11:46:07 +05:00
Julius Knorr a0c52e9f25 Merge pull request #434 from juliusknorr/feat/image-size
fix: One apt install
2025-11-23 21:52:47 +01:00
Julius Knorr a0a49901c4 fix: Remove mariadb-client and move to vim-tiny
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-11-23 21:44:36 +01:00
Julius Knorr 06d90c7731 fix: Increase phpmyadmin upload limit
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-11-23 21:13:32 +01:00
Julius Knorr e5ae68fe43 fix: One apt install
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-11-23 21:09:14 +01:00
Julius Knorr fe55ed130c Merge pull request #433 from juliusknorr/renovate/actions-checkout-6.x
chore(deps): update actions/checkout action to v6
2025-11-23 21:03:51 +01:00
renovate[bot] 6f993fc4a8 chore(deps): update actions/checkout action to v6 2025-11-20 18:05:19 +00:00
Julius Knorr 2c3960d9b3 Merge pull request #431 from CarlSchwan/carl/minio
Minio + pre-signed urls
2025-11-18 11:47:59 +01:00
Carl Schwan 824fd6a24f feat: change default minio config to support pre-signed urls
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-11-17 09:27:56 +01:00
Julius Knorr a7288350a2 Merge pull request #393 from juliusknorr/renovate/quay.io-keycloak-keycloak-26.x 2025-11-12 20:52:56 +01:00
Julius Knorr 99158abfab Merge pull request #426 from juliusknorr/renovate/major-github-artifact-actions 2025-11-12 20:49:48 +01:00
renovate[bot] 04937ac764 chore(deps): update actions/upload-artifact action to v5 2025-11-10 18:40:33 +00:00
Carl Schwan fade46fd51 feat(minio): Expose minio
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-11-10 15:36:29 +01:00
Julius Knorr d7c061f5cc Merge pull request #430 from juliusknorr/copilot/fix-docker-compose-pull-issue 2025-11-06 20:21:37 +01:00
Julius Knorr 2fa13478d6 fix: Add note about original dockerfile 2025-11-06 11:41:21 +01:00
copilot-swe-agent[bot] e9c2bd1948 Remove CodeQL artifact
Co-authored-by: juliusknorr <3404133+juliusknorr@users.noreply.github.com>
2025-11-06 11:41:21 +01:00
copilot-swe-agent[bot] 8c27898475 Final verification complete
Co-authored-by: juliusknorr <3404133+juliusknorr@users.noreply.github.com>
2025-11-06 11:41:21 +01:00
copilot-swe-agent[bot] 475b5552eb Add noop docker image to replace rwgrim/docker-noop
Co-authored-by: juliusknorr <3404133+juliusknorr@users.noreply.github.com>
2025-11-06 11:41:21 +01:00
Julius Knorr 7b9d9bc00b ci: Only start containers for testing
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-11-06 11:34:42 +01:00
Julius Knorr 482cdb5e22 fix: Fix missing closing bracket
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-11-06 09:34:34 +01:00
Julius Knorr 305e9ab561 fix: Do not force enable blackfire
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-11-06 09:27:32 +01:00
Julius Knorr c9680f5adb chore: Properly start container with 8.4 for playwright
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-10-30 13:19:24 +01:00
Julius Knorr a0f2f34f2d chore: Fix env syntax in dockerfiles
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-10-30 13:18:55 +01:00
Julius Knorr 8f9831a509 docs: Update oidc command
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-10-30 09:18:43 +01:00
renovate[bot] 4ece329af0 chore(deps): update quay.io/keycloak/keycloak docker tag to v26.4 2025-10-30 08:17:35 +00:00
Julius Knorr a9be636c25 feat: Build own keycloak container
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-10-30 09:16:36 +01:00
Julius Knorr 39b76cf03d docs: Update standalone commands
Updated Docker commands to use Nextcloud PHP 8.1 and version 32.0.1.
2025-10-28 14:38:33 +01:00
Julius Knorr 1491f30733 Merge pull request #424 from juliusknorr/dependabot/npm_and_yarn/tests/multi-a50d7f32cf
chore(deps): bump playwright and @playwright/test in /tests
2025-10-23 12:08:10 +02:00
dependabot[bot] e05570affc chore(deps): bump playwright and @playwright/test in /tests
Bumps [playwright](https://github.com/microsoft/playwright) to 1.56.1 and updates ancestor dependency [@playwright/test](https://github.com/microsoft/playwright). These dependencies need to be updated together.


Updates `playwright` from 1.52.0 to 1.56.1
- [Release notes](https://github.com/microsoft/playwright/releases)
- [Commits](https://github.com/microsoft/playwright/compare/v1.52.0...v1.56.1)

Updates `@playwright/test` from 1.52.0 to 1.56.1
- [Release notes](https://github.com/microsoft/playwright/releases)
- [Commits](https://github.com/microsoft/playwright/compare/v1.52.0...v1.56.1)

---
updated-dependencies:
- dependency-name: playwright
  dependency-version: 1.56.1
  dependency-type: indirect
- dependency-name: "@playwright/test"
  dependency-version: 1.56.1
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-20 19:06:30 +00:00
Julius Knorr a7990a9923 Merge pull request #422 from nilsding/feature/always-use-latest-notify-push 2025-10-14 08:13:22 +02:00
Julius Knorr 7f5d921f5d Merge pull request #423 from juliusknorr/renovate/actions-setup-node-6.x 2025-10-14 08:08:49 +02:00
renovate[bot] 33634df89e chore(deps): update actions/setup-node action to v6 2025-10-14 05:01:09 +00:00
Jyrki Gadinger f3c9905a9f feat(push): always use latest released version
Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
2025-10-13 13:19:52 +02:00
Julius Knorr 0251f2e6f5 ci: Bump php requirements for playwright tests
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-10-06 14:20:15 +02:00
Julius Knorr 2ed579dc08 chore: Bump min php version
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-10-06 14:18:05 +02:00
Julius Knorr 9432725543 Merge pull request #413 from juliusknorr/dependabot/github_actions/actions/upload-pages-artifact-4
chore(deps): bump actions/upload-pages-artifact from 3 to 4
2025-10-06 10:43:03 +02:00
Julius Knorr fefcf25a23 Merge pull request #417 from juliusknorr/dependabot/github_actions/actions/setup-node-5
chore(deps): bump actions/setup-node from 4 to 5
2025-10-06 10:42:57 +02:00
Julius Knorr d43cd4069e Merge pull request #416 from juliusknorr/dependabot/github_actions/actions/setup-python-6
chore(deps): bump actions/setup-python from 5 to 6
2025-10-06 10:42:43 +02:00
Julius Knorr bbe61685bf Merge pull request #415 from Antreesy/chore/noid/stable32
chore: add stable32 support
2025-10-06 10:42:22 +02:00
dependabot[bot] b143523d74 chore(deps): bump actions/setup-node from 4 to 5
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4 to 5.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-04 18:05:13 +00:00
dependabot[bot] 902d927e65 chore(deps): bump actions/setup-python from 5 to 6
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 5 to 6.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-04 18:05:08 +00:00
Maksim Sukharev e140b45a1e chore: add stable32 support 2025-09-04 12:18:16 +02:00
dependabot[bot] 6291dd37c5 chore(deps): bump actions/upload-pages-artifact from 3 to 4
Bumps [actions/upload-pages-artifact](https://github.com/actions/upload-pages-artifact) from 3 to 4.
- [Release notes](https://github.com/actions/upload-pages-artifact/releases)
- [Commits](https://github.com/actions/upload-pages-artifact/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/upload-pages-artifact
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-22 18:21:57 +00:00
Julius Knorr f247560ae1 Merge pull request #405 from hamza221/fix/keycloak 2025-08-14 07:30:15 +02:00
Hamza 8db3d3fcd2 docs(keycloak): add a note for https
Signed-off-by: Hamza <hamzamahjoubi221@gmail.com>
2025-08-12 11:46:13 +02:00
Julius Knorr 73e8adf99a Merge pull request #403 from salmart-dev/feat/addRootlessDockerSupport 2025-08-12 07:05:31 +02:00
Julius Knorr 829e75d072 Merge pull request #406 from max-nextcloud/chore/update-notify-push 2025-08-12 07:04:29 +02:00
Julius Knorr 4f5e6be41b Merge pull request #407 from juliusknorr/renovate/actions-checkout-5.x 2025-08-12 07:01:53 +02:00
Julius Knorr 3e94c39659 Merge pull request #408 from CarlSchwan/fix-sso 2025-08-12 07:01:41 +02:00
Carl Schwan a06077f755 fix(saml): Make the SAML config works with the default config
Signed-off-by: Carl Schwan <carl.schwan@nextclound.com>
2025-08-11 17:58:22 +02:00
renovate[bot] 0e2d2b286e chore(deps): update actions/checkout action to v5 2025-08-11 13:49:57 +00:00
Max 00405f53e8 chore(update): bump notify push version
Signed-off-by: Max <max@nextcloud.com>
2025-07-30 15:36:52 +02:00
Max d354a41cca docs(notify_push): add basic instructions
Signed-off-by: Max <max@nextcloud.com>
2025-07-30 15:36:12 +02:00
Hamza 8ad77cf1ee fix(keyclock): change default nextcloud url to nextcloud.local
Signed-off-by: Hamza <hamzamahjoubi221@gmail.com>
2025-07-29 14:42:40 +02:00
Salvatore Martire 821d4dfdf5 fix: adds the possibility of using rootless Docker
Hardcoding the doker.sock path prevents people from using Docker in
rootless mode. Even when symlinking the user's docker.sock into
/var/run/docker.sock does not work, as Docker does not follow the
symlink and mounts a directory instead.

This patch allows to define an environment variable `DOCKER_SOCKET` to
override the default value.

Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
2025-07-04 10:54:31 +02:00
Julius Knorr 165e7e39ce Merge pull request #396 from juliusknorr/renovate/redis-8.x
chore(deps): update redis docker tag to v8
2025-06-10 07:30:22 +02:00
renovate[bot] 225b224b1d chore(deps): update redis docker tag to v8 2025-06-07 20:44:11 +02:00
Julius Knorr 5f4827e3bb Merge pull request #401 from juliusknorr/fix/ci 2025-06-07 14:42:21 +02:00
Julius Knorr 3b0ecdd42a test: Fix playwright selector
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-06-07 12:03:47 +02:00
Julius Knorr 6657a112d0 fix: Install latest node
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-06-07 09:57:34 +02:00
Julius Knorr 94dd17a50b fix: Workaround for running latest onlyoffice
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-06-07 09:57:34 +02:00
Julius Knorr a237d561f3 fix: Run on newer ubuntu
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-06-07 09:57:34 +02:00
Julius Knorr 6860d7cd2c Merge pull request #400 from arnowelzel/master 2025-05-12 08:48:44 +02:00
Arno Welzel 2929aaeb86 Remove obsolete version attribute 2025-05-11 14:00:59 +02:00
Julius Knorr b22d1dfbfe Merge pull request #397 from szaimen/patch-1
The aio images moved to ghcr.io
2025-05-08 13:55:22 +02:00
Simon L. eb06339398 The aio images moved to ghcr.io
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-05-08 11:47:40 +02:00
38 changed files with 905 additions and 405 deletions
+33 -35
View File
@@ -14,14 +14,13 @@ on:
jobs:
push_to_registry:
name: Build image
# FIXME: currently there are playwright issues with ubuntu-latest
# https://github.com/microsoft/playwright/issues/30368 closed but still an issue
runs-on: ubuntu-22.04
runs-on: ubuntu-latest
if: github.repository == 'juliusknorr/nextcloud-docker-dev'
strategy:
fail-fast: false
matrix:
container:
- php85
- php84
- php83
- php82
@@ -35,6 +34,7 @@ jobs:
- saml
- nginx
- elasticsearch
- keycloak
- mailhog
- ldap
- lookupserver
@@ -42,29 +42,26 @@ jobs:
- codedev
- code
- talk-janus
- noop
permissions:
packages: write
contents: read
steps:
- name: Check out the repo
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
# TODO: remove this when https://github.com/actions/runner-images/issues/11471
with:
platforms: linux/arm64
image: tonistiigi/binfmt:qemu-v7.0.0-28
uses: docker/setup-qemu-action@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
uses: docker/setup-buildx-action@v4
- name: Cache Docker layers
uses: actions/cache@v4
uses: actions/cache@v5
with:
path: /tmp/.buildx-cache
key: ${{ matrix.container }}-buildx-${{ github.sha }}
restore-keys: |
${{ matrix.container }}-buildx-
- name: Log in to GitHub Container Registry
uses: docker/login-action@v3
uses: docker/login-action@v4
with:
registry: ghcr.io
username: ${{ github.actor }}
@@ -78,7 +75,7 @@ jobs:
DOCKERFILE=$([[ -f "docker/$NAME/Dockerfile" ]] && echo "docker/$NAME/Dockerfile" || echo "docker/Dockerfile.$NAME")
echo "DOCKERFILE=$DOCKERFILE" >> $GITHUB_OUTPUT
- name: Build container image
uses: docker/build-push-action@v6
uses: docker/build-push-action@v7
with:
push: false
context: docker/
@@ -89,13 +86,27 @@ jobs:
ghcr.io/juliusknorr/nextcloud-dev-${{ matrix.container }}:latest
cache-from: type=local,src=/tmp/.buildx-cache
cache-to: type=local,dest=/tmp/.buildx-cache-new
- name: Push container image
uses: docker/build-push-action@v7
if: github.ref == 'refs/heads/master' || github.event_name == 'release'
with:
push: true
context: docker/
platforms: linux/amd64,linux/arm64
file: ${{ steps.dockerfile.outputs.DOCKERFILE }}
tags: |
ghcr.io/juliusknorr/nextcloud-dev-${{ matrix.container }}:${{ github.event_name == 'release' && 'release' || 'latest' }}
ghcr.io/juliusknorr/nextcloud-dev-${{ matrix.container }}:${{ github.ref_name }}
cache-from: type=local,src=/tmp/.buildx-cache
cache-to: type=local,dest=/tmp/.buildx-cache-new
- name: Start containers with docker compose
if: matrix.container == 'php82' || matrix.container == 'php83' || matrix.container == 'php84'
run: |
./bootstrap.sh
PHP_VERSION=$(echo ${{ matrix.container }} | sed -e 's/^php//')
echo "PHP_VERSION=${PHP_VERSION}" >> .env
# exit if php version is not numeric or below 80
if ! [[ $PHP_VERSION =~ ^[0-9]+$ ]] || [[ $PHP_VERSION -lt 80 ]] || [[ $PHP_VERSION -gt 83 ]]; then
# exit if php version is not numeric or below 80 or above 84 to only test against supported ones in server master
if ! [[ $PHP_VERSION =~ ^[0-9]+$ ]] || [[ $PHP_VERSION -lt 80 ]] || [[ $PHP_VERSION -gt 84 ]]; then
exit 0
fi
docker compose up -d nextcloud
@@ -108,41 +119,28 @@ jobs:
sleep 1
done
curl http://nextcloud.local/status.php
- uses: actions/setup-node@v4
if: matrix.container == 'php81' || matrix.container == 'php82' || matrix.container == 'php83'
- uses: actions/setup-node@v6
if: matrix.container == 'php82' || matrix.container == 'php83' || matrix.container == 'php84'
with:
node-version: latest
- name: Install dependencies
if: matrix.container == 'php81' || matrix.container == 'php82' || matrix.container == 'php83'
if: matrix.container == 'php82' || matrix.container == 'php83' || matrix.container == 'php84'
working-directory: tests
run: npm ci
- name: Install Playwright Browsers
if: matrix.container == 'php81' || matrix.container == 'php82' || matrix.container == 'php83'
if: matrix.container == 'php82' || matrix.container == 'php83' || matrix.container == 'php84'
working-directory: tests
run: npx playwright install --with-deps
- name: Run Playwright tests
if: matrix.container == 'php81' || matrix.container == 'php82' || matrix.container == 'php83'
if: matrix.container == 'php82' || matrix.container == 'php83' || matrix.container == 'php84'
working-directory: tests
run: npx playwright test
- uses: actions/upload-artifact@v4
if: matrix.container == 'php81' || matrix.container == 'php82' || matrix.container == 'php83'
- uses: actions/upload-artifact@v6
if: matrix.container == 'php82' || matrix.container == 'php83' || matrix.container == 'php84'
with:
name: playwright-report-${{ matrix.container }}
path: tests/playwright-report/
retention-days: 30
- name: Push container image
uses: docker/build-push-action@v6
if: github.ref == 'refs/heads/master' || github.event_name == 'release'
with:
push: true
context: docker/
platforms: linux/amd64,linux/arm64
file: ${{ steps.dockerfile.outputs.DOCKERFILE }}
tags: |
ghcr.io/juliusknorr/nextcloud-dev-${{ matrix.container }}:${{ github.event_name == 'release' && 'release' || 'latest' }}
ghcr.io/juliusknorr/nextcloud-dev-${{ matrix.container }}:${{ github.ref_name }}
cache-from: type=local,src=/tmp/.buildx-cache
cache-to: type=local,dest=/tmp/.buildx-cache-new
- name: Move cache
run: |
rm -rf /tmp/.buildx-cache
+3 -3
View File
@@ -28,11 +28,11 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Setup Pages
uses: actions/configure-pages@v5
- name: Set up Python
uses: actions/setup-python@v5
uses: actions/setup-python@v6
with:
python-version: 3.x
- name: Install dependencies
@@ -42,7 +42,7 @@ jobs:
- name: Build MkDocs
run: mkdocs build
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
uses: actions/upload-pages-artifact@v4
with:
# Upload entire repository
path: './site'
+1 -1
View File
@@ -11,7 +11,7 @@ jobs:
name: Shellcheck
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- name: Run ShellCheck
uses: ludeeus/action-shellcheck@master
env:
+1
View File
@@ -56,6 +56,7 @@ template-apply:
cat docker/Dockerfile.php.template | sed 's/php:8.2/php:8.2/' > docker/php82/Dockerfile
cat docker/Dockerfile.php.template | sed 's/php:8.2/php:8.3/' > docker/php83/Dockerfile
cat docker/Dockerfile.php.template | sed 's/php:8.2/php:8.4/' > docker/php84/Dockerfile
cat docker/Dockerfile.php.template | sed 's/php:8.2/php:8.5/' > docker/php85/Dockerfile
docs:
pip3 install mkdocs
+1 -1
View File
@@ -82,7 +82,7 @@ if [ -f ".env" ]; then
echo "❌ Repository path does not exist"
fi
for i in stable27 stable28 stable29 stable30 stable31
for i in stable29 stable30 stable31 stable32 stable33
do
echo "Stable $i repository path: ${STABLE_ROOT_PATH}/${i}"
STABLE_VERSION=$(grep "OC_VersionString" "${STABLE_ROOT_PATH}/${i}/version.php" | cut -d "'" -f 2)
+183 -34
View File
@@ -1,5 +1,3 @@
version: '3'
services:
# Proxy for ssl termination and easier hostname access
@@ -10,7 +8,7 @@ services:
- "${IP_BIND:-127.0.0.1}:${PROXY_PORT_HTTP:-80}:80"
- "${IP_BIND:-127.0.0.1}:${PROXY_PORT_HTTPS:-443}:443"
volumes:
- /var/run/docker.sock:/tmp/docker.sock:ro
- ${DOCKER_SOCKET-/var/run/docker.sock}:/tmp/docker.sock:ro
- ./data/ssl/:/etc/nginx/certs
- ./data/nginx/vhost.d/:/etc/nginx/vhost.d
environment:
@@ -42,7 +40,12 @@ services:
- stable29${DOMAIN_SUFFIX}
- stable30${DOMAIN_SUFFIX}
- stable31${DOMAIN_SUFFIX}
- stable32${DOMAIN_SUFFIX}
- stable33${DOMAIN_SUFFIX}
- mail${DOMAIN_SUFFIX}
- sso${DOMAIN_SUFFIX}
- minio${DOMAIN_SUFFIX}
- rustfs${DOMAIN_SUFFIX}
- imap${DOMAIN_SUFFIX}
- collabora${DOMAIN_SUFFIX}
- codedev${DOMAIN_SUFFIX}
@@ -61,6 +64,7 @@ services:
- phpmyadmin${DOMAIN_SUFFIX}
- talk-signaling${DOMAIN_SUFFIX}
- talk-recording${DOMAIN_SUFFIX}
- authentik${DOMAIN_SUFFIX}
extra_hosts:
- host.docker.internal:host-gateway
@@ -74,7 +78,7 @@ services:
- ./docker/configs/haproxy.conf:/usr/local/etc/haproxy/haproxy.cfg:ro
nextcloud:
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-81}:latest
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-82}:latest
environment:
SQL: ${SQL:-mysql}
NEXTCLOUD_AUTOINSTALL: ${NEXTCLOUD_AUTOINSTALL:-YES}
@@ -106,9 +110,9 @@ services:
- host.docker.internal:host-gateway
nextcloud2:
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-81}:latest
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-82}:latest
environment:
SQL: 'mysql'
SQL: ${SQL:-mysql}
VIRTUAL_HOST: "nextcloud2${DOMAIN_SUFFIX}"
PHP_XDEBUG_MODE: ${PHP_XDEBUG_MODE:-develop}
volumes:
@@ -132,7 +136,7 @@ services:
- host.docker.internal:host-gateway
nextcloud3:
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-81}:latest
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-82}:latest
environment:
SQL: ${SQL:-mysql}
VIRTUAL_HOST: "nextcloud3${DOMAIN_SUFFIX}"
@@ -421,7 +425,7 @@ services:
- host.docker.internal:host-gateway
stable25:
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-81}:latest
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-82}:latest
environment:
SQL: ${SQL:-mysql}
NEXTCLOUD_AUTOINSTALL: "YES"
@@ -451,7 +455,7 @@ services:
- host.docker.internal:host-gateway
stable26:
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-81}:latest
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-82}:latest
environment:
SQL: ${SQL:-mysql}
NEXTCLOUD_AUTOINSTALL: "YES"
@@ -481,7 +485,7 @@ services:
- host.docker.internal:host-gateway
stable27:
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-81}:latest
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-82}:latest
environment:
SQL: ${SQL:-mysql}
NEXTCLOUD_AUTOINSTALL: "YES"
@@ -511,7 +515,7 @@ services:
- host.docker.internal:host-gateway
stable28:
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-81}:latest
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-82}:latest
environment:
SQL: ${SQL:-mysql}
NEXTCLOUD_AUTOINSTALL: "YES"
@@ -541,7 +545,7 @@ services:
- host.docker.internal:host-gateway
stable29:
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-81}:latest
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-82}:latest
environment:
SQL: ${SQL:-mysql}
NEXTCLOUD_AUTOINSTALL: "YES"
@@ -571,7 +575,7 @@ services:
- host.docker.internal:host-gateway
stable30:
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-81}:latest
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-82}:latest
environment:
SQL: ${SQL:-mysql}
NEXTCLOUD_AUTOINSTALL: "YES"
@@ -601,7 +605,7 @@ services:
- host.docker.internal:host-gateway
stable31:
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-81}:latest
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-82}:latest
environment:
SQL: ${SQL:-mysql}
NEXTCLOUD_AUTOINSTALL: "YES"
@@ -630,8 +634,68 @@ services:
extra_hosts:
- host.docker.internal:host-gateway
stable32:
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-82}:latest
environment:
SQL: ${SQL:-mysql}
NEXTCLOUD_AUTOINSTALL: "YES"
NEXTCLOUD_AUTOINSTALL_APPS:
WITH_REDIS: "YES"
VIRTUAL_HOST: stable32${DOMAIN_SUFFIX}
ADDITIONAL_APPS_PATH:
NEXTCLOUD_TRUSTED_DOMAINS:
PRIMARY: ${PRIMARY:-local}
PHP_XDEBUG_MODE: ${PHP_XDEBUG_MODE:-develop}
volumes:
- '${STABLE_ROOT_PATH}/stable32:/var/www/html'
- '${STABLE_ROOT_PATH}/stable32/apps-extra:/var/www/html/apps-extra'
- '${ADDITIONAL_APPS_PATH:-./data/apps-extra}:/var/www/html/apps-shared'
- /var/www/html/data
- /var/www/html/config
- /var/www/html/apps-writable
- ./data/skeleton/:/skeleton
- ./data/additional.config.php:/var/www/html/config/additional.config.php:ro
- ./data/shared:/shared
depends_on:
- database-${SQL:-mysql}
- redis
- mail
- ${PROXY_SERVICE:-proxy}
extra_hosts:
- host.docker.internal:host-gateway
stable33:
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-83}:latest
environment:
SQL: ${SQL:-mysql}
NEXTCLOUD_AUTOINSTALL: "YES"
NEXTCLOUD_AUTOINSTALL_APPS:
WITH_REDIS: "YES"
VIRTUAL_HOST: stable33${DOMAIN_SUFFIX}
ADDITIONAL_APPS_PATH:
NEXTCLOUD_TRUSTED_DOMAINS:
PRIMARY: ${PRIMARY:-local}
PHP_XDEBUG_MODE: ${PHP_XDEBUG_MODE:-develop}
volumes:
- '${STABLE_ROOT_PATH}/stable33:/var/www/html'
- '${STABLE_ROOT_PATH}/stable33/apps-extra:/var/www/html/apps-extra'
- '${ADDITIONAL_APPS_PATH:-./data/apps-extra}:/var/www/html/apps-shared'
- /var/www/html/data
- /var/www/html/config
- /var/www/html/apps-writable
- ./data/skeleton/:/skeleton
- ./data/additional.config.php:/var/www/html/config/additional.config.php:ro
- ./data/shared:/shared
depends_on:
- database-${SQL:-mysql}
- redis
- mail
- ${PROXY_SERVICE:-proxy}
extra_hosts:
- host.docker.internal:host-gateway
database-sqlite:
image: rwgrim/docker-noop
image: ghcr.io/juliusknorr/nextcloud-dev-noop:latest
database-mysql:
image: mariadb:10.6
@@ -724,7 +788,7 @@ services:
- ${PROXY_SERVICE:-proxy}
redis:
image: redis:7
image: redis:8
volumes:
- redis:/data
@@ -750,6 +814,7 @@ services:
PMA_HOST: database-mysql
PMA_USER: root
PMA_PASSWORD: nextcloud
UPLOAD_LIMIT: 512M
ldapadmin:
image: osixia/phpldapadmin
@@ -760,7 +825,7 @@ services:
- "${IP_BIND:-127.0.0.1}:${PORTBASE:-800}8:80"
saml:
image: unicon/simplesamlphp
image: unicon/simplesamlphp
volumes:
- ./docker/configs/var-simplesamlphp/config:/var/simplesamlphp/config
- ./docker/configs/var-simplesamlphp/cert:/var/simplesamlphp/cert
@@ -831,6 +896,8 @@ services:
aliasgroup10: http://stable29${DOMAIN_SUFFIX}
aliasgroup11: http://stable30${DOMAIN_SUFFIX}
aliasgroup12: http://stable31${DOMAIN_SUFFIX}
aliasgroup13: http://stable32${DOMAIN_SUFFIX}
aliasgroup14: http://stable33${DOMAIN_SUFFIX}
dictionaries: de_DE en_US en_GB
username: admin
password: admin
@@ -853,7 +920,7 @@ services:
tail -f /dev/null
onlyoffice:
image: onlyoffice/documentserver:8.2
image: onlyoffice/documentserver:latest
environment:
VIRTUAL_HOST: onlyoffice${DOMAIN_SUFFIX}
USE_UNAUTHORIZED_STORAGE: "true"
@@ -868,14 +935,27 @@ services:
image: minio/minio
environment:
VIRTUAL_HOST: minio${DOMAIN_SUFFIX}
VIRTUAL_PORT: 9001
VIRTUAL_PORT: 9000
MINIO_ROOT_USER: nextcloud
MINIO_ROOT_PASSWORD: nextcloud
MINIO_BROWSER_REDIRECT_URL: ${PROTOCOL}://minio${DOMAIN_SUFFIX}
ports:
- "9001:9001"
volumes:
- objectstorage_minio:/data
command: server /data --console-address :9001
rustfs:
image: rustfs/rustfs:latest
environment:
VIRTUAL_HOST: rustfs${DOMAIN_SUFFIX}
VIRTUAL_PORT: 9001
RUSTFS_ACCESS_KEY: nextcloud
RUSTFS_SECRET_KEY: nextcloud
RUSTFS_CONSOLE_ENABLE: "true"
volumes:
- objectstorage_rustfs:/data
elasticsearch:
build:
context: ./docker
@@ -923,29 +1003,32 @@ services:
NEXTCLOUD_URL: http://nextcloud
keycloak:
image: quay.io/keycloak/keycloak:26.1
image: ghcr.io/juliusknorr/nextcloud-dev-keycloak:latest
expose:
- 8080
volumes:
- ./docker/configs/keycloak:/opt/keycloak/data/import
command: start-dev --import-realm
# volumes:
# - ./docker/configs/keycloak:/opt/keycloak/data/import
command: start-dev --import-realm --http-enabled=true --proxy-headers xforwarded
environment:
PROTOCOL: "${PROTOCOL:-http}"
DOMAIN_SUFFIX: "${DOMAIN_SUFFIX:-.local}"
VIRTUAL_HOST: "keycloak${DOMAIN_SUFFIX}"
VIRTUAL_PORT: 8080
KEYCLOAK_ADMIN: admin
KEYCLOAK_ADMIN_PASSWORD: admin
PROXY_ADDRESS_FORWARDING: "true"
KC_BOOTSTRAP_ADMIN_USERNAME: admin
KC_BOOTSTRAP_ADMIN_PASSWORD: admin
KEYCLOAK_PROXY_ADDRESS_FORWARDING: "true"
KEYCLOAK_FRONTEND_URL: "${PROTOCOL:-http}://keycloak${DOMAIN_SUFFIX}"
KC_PROXY: edge
av:
image: mkodockx/docker-clamav:alpine
image: clamav/clamav:stable
container_name: nextav
restart: unless-stopped
volumes:
- clam:/var/lib/clamav
portal:
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-81}:latest
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-82}:latest
environment:
VIRTUAL_HOST: portal${DOMAIN_SUFFIX}
SQL: 'mysql'
@@ -967,7 +1050,7 @@ services:
- host.docker.internal:host-gateway
gs1:
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-81}:latest
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-82}:latest
environment:
VIRTUAL_HOST: gs1${DOMAIN_SUFFIX}
SQL: 'mysql'
@@ -990,7 +1073,7 @@ services:
- host.docker.internal:host-gateway
gs2:
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-81}:latest
image: ghcr.io/juliusknorr/nextcloud-dev-php${PHP_VERSION:-82}:latest
environment:
VIRTUAL_HOST: gs2${DOMAIN_SUFFIX}
SQL: 'mysql'
@@ -1046,7 +1129,7 @@ services:
previews_hpb:
image: nextcloud/aio-imaginary:latest
image: ghcr.io/nextcloud-releases/aio-imaginary:latest
ports:
- "${IP_BIND:-127.0.0.1}:8088:8088"
environment:
@@ -1070,7 +1153,7 @@ services:
image: ghcr.io/juliusknorr/nextcloud-dev-talk-janus:latest
talk-recording:
image: nextcloud/aio-talk-recording:latest
image: ghcr.io/nextcloud-releases/aio-talk-recording:latest
environment:
NC_DOMAIN: "nextcloud${DOMAIN_SUFFIX}"
ALLOW_ALL: "true"
@@ -1089,7 +1172,7 @@ services:
container_name: nextcloud-appapi-dsp-http
network_mode: ${NETWORK_MODE:-master_default}
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ${DOCKER_SOCKET-/var/run/docker.sock}:/var/run/docker.sock
environment:
- NC_HAPROXY_PASSWORD=${NC_HAPROXY_PASSWORD:-some_secure_password}
- BIND_ADDRESS=${BIND_ADDRESS:-}
@@ -1105,7 +1188,7 @@ services:
container_name: nextcloud-appapi-dsp-https
network_mode: ${NETWORK_MODE:-host}
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ${DOCKER_SOCKET-/var/run/docker.sock}:/var/run/docker.sock
- ${CERT_PATH:-./data/ssl/app_api/app_api.pem}:/certs/cert.pem
environment:
- NC_HAPROXY_PASSWORD=${NC_HAPROXY_PASSWORD:-some_secure_password}
@@ -1117,6 +1200,69 @@ services:
- EX_APPS_NET=${EX_APPS_NET:-ipv4@localhost}
- EX_APPS_COUNT=${EX_APPS_COUNT:-50}
authentik-postgresql:
env_file:
- .env
environment:
POSTGRES_DB: ${PG_DB:-authentik}
POSTGRES_PASSWORD: authentik-database
POSTGRES_USER: ${PG_USER:-authentik}
healthcheck:
interval: 30s
retries: 5
start_period: 20s
test:
- CMD-SHELL
- pg_isready -d $${POSTGRES_DB} -U $${POSTGRES_USER}
timeout: 5s
image: docker.io/library/postgres:16-alpine
restart: unless-stopped
volumes:
- authentik-database:/var/lib/postgresql/data
authentik-worker:
command: worker
depends_on:
authentik-postgresql:
condition: service_healthy
env_file:
- .env
environment:
AUTHENTIK_POSTGRESQL__HOST: authentik-postgresql
AUTHENTIK_POSTGRESQL__NAME: ${PG_DB:-authentik}
AUTHENTIK_POSTGRESQL__PASSWORD: authentik-database
AUTHENTIK_POSTGRESQL__USER: ${PG_USER:-authentik}
AUTHENTIK_SECRET_KEY: authentik-secret
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2025.10.2}
restart: unless-stopped
user: root
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./authentik-media:/media
- ./authentik-certs:/certs
- ./authentik-custom-templates:/templates
authentik:
command: server
depends_on:
authentik-postgresql:
condition: service_healthy
authentik-worker:
condition: service_healthy
environment:
AUTHENTIK_POSTGRESQL__HOST: authentik-postgresql
AUTHENTIK_POSTGRESQL__NAME: ${PG_DB:-authentik}
AUTHENTIK_POSTGRESQL__PASSWORD: authentik-database
AUTHENTIK_POSTGRESQL__USER: ${PG_USER:-authentik}
AUTHENTIK_SECRET_KEY: authentik-secret
VIRTUAL_HOST: "authentik${DOMAIN_SUFFIX}"
VIRTUAL_PORT: 9000
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2025.10.2}
ports:
- ${COMPOSE_PORT_HTTP:-9000}:9000
restart: unless-stopped
volumes:
- ./authentik-media:/media
- ./authentik-custom-templates:/templates
volumes:
data:
@@ -1135,11 +1281,14 @@ volumes:
document_data:
document_log:
objectstorage_minio:
objectstorage_rustfs:
smb:
smbhomes:
elasticsearch_data:
clam:
mariadb_primary_data:
authentik-database:
driver: local
networks:
default:
+30 -22
View File
@@ -1,4 +1,4 @@
FROM php:8.4.5-apache
FROM php:8.2-apache
ADD https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions /usr/local/bin/
@@ -29,22 +29,37 @@ RUN install-php-extensions \
# dev tools separate install so we quickly change without rebuilding all php extensions
RUN apt update && apt-get install -y --no-install-recommends \
git curl vim nano sudo cron smbclient iproute2 lnav wget iputils-ping gnupg2 jq ripgrep rsync mariadb-client \
git \
curl \
vim-tiny \
nano \
sudo \
cron \
smbclient \
iproute2 \
lnav \
wget \
iputils-ping \
gnupg2 \
jq \
ripgrep \
rsync \
&& rm -rf /var/lib/apt/lists/*
# Install PHPUnit
RUN wget -O /usr/local/bin/phpunit8 https://phar.phpunit.de/phpunit-8.phar \
&& chmod +x /usr/local/bin/phpunit8 \
&& wget -O /usr/local/bin/phpunit9 https://phar.phpunit.de/phpunit-9.phar \
&& chmod +x /usr/local/bin/phpunit9 \
&& ln -s /usr/local/bin/phpunit9 /usr/local/bin/phpunit
RUN wget -O /usr/local/bin/phpunit11 https://phar.phpunit.de/phpunit-11.phar \
&& chmod +x /usr/local/bin/phpunit11 \
&& wget -O /usr/local/bin/phpunit12 https://phar.phpunit.de/phpunit-12.phar \
&& chmod +x /usr/local/bin/phpunit12 \
&& ln -s /usr/local/bin/phpunit11 /usr/local/bin/phpunit
# Install NVM
RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/master/install.sh | bash \
&& export NVM_DIR="/root/.nvm" \
&& . "$NVM_DIR/nvm.sh" \
&& nvm install 20 \
&& nvm alias default 20
&& nvm install node \
&& nvm alias default node \
&& nvm cache clear
RUN wget https://gist.githubusercontent.com/nickvergessen/e21ee0a09ee3b3f7fd1b04c83dd3e114/raw/83142be1e50c23e8de1bd7aae88a95e5d6ae1ce2/nextcloud_log.json && lnav -i nextcloud_log.json && rm nextcloud_log.json
@@ -63,14 +78,7 @@ ADD configs/php/nextcloud.ini /usr/local/etc/php/conf.d/nextcloud.ini
ADD configs/php/xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
# Setup blackfire probe
RUN wget -q -O - https://packages.blackfire.io/gpg.key | sudo apt-key add - \
&& echo "deb http://packages.blackfire.io/debian any main" | sudo tee /etc/apt/sources.list.d/blackfire.list \
&& apt-get update \
&& (apt-get install -y --no-install-recommends blackfire \
&& mv /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini.disabled \
&& printf "\n\nblackfire.agent_socket=tcp://blackfire:8307\n" >> $PHP_INI_DIR/conf.d/zz-blackfire.ini) \
|| echo "Skipped blackfire as the installation failed" \
&& rm -rf /var/lib/apt/lists/*
RUN mv /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini.disabled
RUN echo "ServerName localhost" >> /etc/apache2/apache2.conf
@@ -85,16 +93,16 @@ VOLUME /var/www/html/apps-writable
VOLUME /var/www/html/config
VOLUME /var/www/html/data
ENV SQL sqlite
ENV NEXTCLOUD_AUTOINSTALL YES
ENV WITH_REDIS NO
ENV SQL=sqlite
ENV NEXTCLOUD_AUTOINSTALL=YES
ENV WITH_REDIS=NO
ENV WEBROOT /var/www/html
ENV WEBROOT=/var/www/html
WORKDIR /var/www/html
ENTRYPOINT ["/usr/local/bin/bootstrap.sh"]
CMD ["apache2-foreground"]
ADD data/installing.html /root/installing.html
ADD configs/autoconfig_mysql.php configs/autoconfig_pgsql.php configs/autoconfig_oci.php configs/default.config.php configs/storage.config.php configs/redis.config.php configs/apcu.config.php /root/
ADD configs/autoconfig_mysql.php configs/autoconfig_pgsql.php configs/autoconfig_oci.php configs/default.config.php configs/redis.config.php configs/apcu.config.php /root/
ADD bin/bootstrap.sh bin/occ /usr/local/bin/
+30 -22
View File
@@ -1,4 +1,4 @@
FROM php:8.4.5-apache
FROM php:7.1-apache
ADD https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions /usr/local/bin/
@@ -29,22 +29,37 @@ RUN install-php-extensions \
# dev tools separate install so we quickly change without rebuilding all php extensions
RUN apt update && apt-get install -y --no-install-recommends \
git curl vim nano sudo cron smbclient iproute2 lnav wget iputils-ping gnupg2 jq ripgrep rsync mariadb-client \
git \
curl \
vim-tiny \
nano \
sudo \
cron \
smbclient \
iproute2 \
lnav \
wget \
iputils-ping \
gnupg2 \
jq \
ripgrep \
rsync \
&& rm -rf /var/lib/apt/lists/*
# Install PHPUnit
RUN wget -O /usr/local/bin/phpunit8 https://phar.phpunit.de/phpunit-8.phar \
&& chmod +x /usr/local/bin/phpunit8 \
&& wget -O /usr/local/bin/phpunit9 https://phar.phpunit.de/phpunit-9.phar \
&& chmod +x /usr/local/bin/phpunit9 \
&& ln -s /usr/local/bin/phpunit9 /usr/local/bin/phpunit
RUN wget -O /usr/local/bin/phpunit11 https://phar.phpunit.de/phpunit-11.phar \
&& chmod +x /usr/local/bin/phpunit11 \
&& wget -O /usr/local/bin/phpunit12 https://phar.phpunit.de/phpunit-12.phar \
&& chmod +x /usr/local/bin/phpunit12 \
&& ln -s /usr/local/bin/phpunit11 /usr/local/bin/phpunit
# Install NVM
RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/master/install.sh | bash \
&& export NVM_DIR="/root/.nvm" \
&& . "$NVM_DIR/nvm.sh" \
&& nvm install 20 \
&& nvm alias default 20
&& nvm install node \
&& nvm alias default node \
&& nvm cache clear
RUN wget https://gist.githubusercontent.com/nickvergessen/e21ee0a09ee3b3f7fd1b04c83dd3e114/raw/83142be1e50c23e8de1bd7aae88a95e5d6ae1ce2/nextcloud_log.json && lnav -i nextcloud_log.json && rm nextcloud_log.json
@@ -63,14 +78,7 @@ ADD configs/php/nextcloud.ini /usr/local/etc/php/conf.d/nextcloud.ini
ADD configs/php/xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
# Setup blackfire probe
RUN wget -q -O - https://packages.blackfire.io/gpg.key | sudo apt-key add - \
&& echo "deb http://packages.blackfire.io/debian any main" | sudo tee /etc/apt/sources.list.d/blackfire.list \
&& apt-get update \
&& (apt-get install -y --no-install-recommends blackfire \
&& mv /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini.disabled \
&& printf "\n\nblackfire.agent_socket=tcp://blackfire:8307\n" >> $PHP_INI_DIR/conf.d/zz-blackfire.ini) \
|| echo "Skipped blackfire as the installation failed" \
&& rm -rf /var/lib/apt/lists/*
RUN mv /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini.disabled
RUN echo "ServerName localhost" >> /etc/apache2/apache2.conf
@@ -85,16 +93,16 @@ VOLUME /var/www/html/apps-writable
VOLUME /var/www/html/config
VOLUME /var/www/html/data
ENV SQL sqlite
ENV NEXTCLOUD_AUTOINSTALL YES
ENV WITH_REDIS NO
ENV SQL=sqlite
ENV NEXTCLOUD_AUTOINSTALL=YES
ENV WITH_REDIS=NO
ENV WEBROOT /var/www/html
ENV WEBROOT=/var/www/html
WORKDIR /var/www/html
ENTRYPOINT ["/usr/local/bin/bootstrap.sh"]
CMD ["apache2-foreground"]
ADD data/installing.html /root/installing.html
ADD configs/autoconfig_mysql.php configs/autoconfig_pgsql.php configs/autoconfig_oci.php configs/default.config.php configs/storage.config.php configs/redis.config.php configs/apcu.config.php /root/
ADD configs/autoconfig_mysql.php configs/autoconfig_pgsql.php configs/autoconfig_oci.php configs/default.config.php configs/redis.config.php configs/apcu.config.php /root/
ADD bin/bootstrap.sh bin/occ /usr/local/bin/
+30 -22
View File
@@ -1,4 +1,4 @@
FROM php:8.4.5-apache
FROM php:7.2-apache
ADD https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions /usr/local/bin/
@@ -29,22 +29,37 @@ RUN install-php-extensions \
# dev tools separate install so we quickly change without rebuilding all php extensions
RUN apt update && apt-get install -y --no-install-recommends \
git curl vim nano sudo cron smbclient iproute2 lnav wget iputils-ping gnupg2 jq ripgrep rsync mariadb-client \
git \
curl \
vim-tiny \
nano \
sudo \
cron \
smbclient \
iproute2 \
lnav \
wget \
iputils-ping \
gnupg2 \
jq \
ripgrep \
rsync \
&& rm -rf /var/lib/apt/lists/*
# Install PHPUnit
RUN wget -O /usr/local/bin/phpunit8 https://phar.phpunit.de/phpunit-8.phar \
&& chmod +x /usr/local/bin/phpunit8 \
&& wget -O /usr/local/bin/phpunit9 https://phar.phpunit.de/phpunit-9.phar \
&& chmod +x /usr/local/bin/phpunit9 \
&& ln -s /usr/local/bin/phpunit9 /usr/local/bin/phpunit
RUN wget -O /usr/local/bin/phpunit11 https://phar.phpunit.de/phpunit-11.phar \
&& chmod +x /usr/local/bin/phpunit11 \
&& wget -O /usr/local/bin/phpunit12 https://phar.phpunit.de/phpunit-12.phar \
&& chmod +x /usr/local/bin/phpunit12 \
&& ln -s /usr/local/bin/phpunit11 /usr/local/bin/phpunit
# Install NVM
RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/master/install.sh | bash \
&& export NVM_DIR="/root/.nvm" \
&& . "$NVM_DIR/nvm.sh" \
&& nvm install 20 \
&& nvm alias default 20
&& nvm install node \
&& nvm alias default node \
&& nvm cache clear
RUN wget https://gist.githubusercontent.com/nickvergessen/e21ee0a09ee3b3f7fd1b04c83dd3e114/raw/83142be1e50c23e8de1bd7aae88a95e5d6ae1ce2/nextcloud_log.json && lnav -i nextcloud_log.json && rm nextcloud_log.json
@@ -63,14 +78,7 @@ ADD configs/php/nextcloud.ini /usr/local/etc/php/conf.d/nextcloud.ini
ADD configs/php/xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
# Setup blackfire probe
RUN wget -q -O - https://packages.blackfire.io/gpg.key | sudo apt-key add - \
&& echo "deb http://packages.blackfire.io/debian any main" | sudo tee /etc/apt/sources.list.d/blackfire.list \
&& apt-get update \
&& (apt-get install -y --no-install-recommends blackfire \
&& mv /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini.disabled \
&& printf "\n\nblackfire.agent_socket=tcp://blackfire:8307\n" >> $PHP_INI_DIR/conf.d/zz-blackfire.ini) \
|| echo "Skipped blackfire as the installation failed" \
&& rm -rf /var/lib/apt/lists/*
RUN mv /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini.disabled
RUN echo "ServerName localhost" >> /etc/apache2/apache2.conf
@@ -85,16 +93,16 @@ VOLUME /var/www/html/apps-writable
VOLUME /var/www/html/config
VOLUME /var/www/html/data
ENV SQL sqlite
ENV NEXTCLOUD_AUTOINSTALL YES
ENV WITH_REDIS NO
ENV SQL=sqlite
ENV NEXTCLOUD_AUTOINSTALL=YES
ENV WITH_REDIS=NO
ENV WEBROOT /var/www/html
ENV WEBROOT=/var/www/html
WORKDIR /var/www/html
ENTRYPOINT ["/usr/local/bin/bootstrap.sh"]
CMD ["apache2-foreground"]
ADD data/installing.html /root/installing.html
ADD configs/autoconfig_mysql.php configs/autoconfig_pgsql.php configs/autoconfig_oci.php configs/default.config.php configs/storage.config.php configs/redis.config.php configs/apcu.config.php /root/
ADD configs/autoconfig_mysql.php configs/autoconfig_pgsql.php configs/autoconfig_oci.php configs/default.config.php configs/redis.config.php configs/apcu.config.php /root/
ADD bin/bootstrap.sh bin/occ /usr/local/bin/
+30 -22
View File
@@ -1,4 +1,4 @@
FROM php:8.4.5-apache
FROM php:7.3-apache
ADD https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions /usr/local/bin/
@@ -29,22 +29,37 @@ RUN install-php-extensions \
# dev tools separate install so we quickly change without rebuilding all php extensions
RUN apt update && apt-get install -y --no-install-recommends \
git curl vim nano sudo cron smbclient iproute2 lnav wget iputils-ping gnupg2 jq ripgrep rsync mariadb-client \
git \
curl \
vim-tiny \
nano \
sudo \
cron \
smbclient \
iproute2 \
lnav \
wget \
iputils-ping \
gnupg2 \
jq \
ripgrep \
rsync \
&& rm -rf /var/lib/apt/lists/*
# Install PHPUnit
RUN wget -O /usr/local/bin/phpunit8 https://phar.phpunit.de/phpunit-8.phar \
&& chmod +x /usr/local/bin/phpunit8 \
&& wget -O /usr/local/bin/phpunit9 https://phar.phpunit.de/phpunit-9.phar \
&& chmod +x /usr/local/bin/phpunit9 \
&& ln -s /usr/local/bin/phpunit9 /usr/local/bin/phpunit
RUN wget -O /usr/local/bin/phpunit11 https://phar.phpunit.de/phpunit-11.phar \
&& chmod +x /usr/local/bin/phpunit11 \
&& wget -O /usr/local/bin/phpunit12 https://phar.phpunit.de/phpunit-12.phar \
&& chmod +x /usr/local/bin/phpunit12 \
&& ln -s /usr/local/bin/phpunit11 /usr/local/bin/phpunit
# Install NVM
RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/master/install.sh | bash \
&& export NVM_DIR="/root/.nvm" \
&& . "$NVM_DIR/nvm.sh" \
&& nvm install 20 \
&& nvm alias default 20
&& nvm install node \
&& nvm alias default node \
&& nvm cache clear
RUN wget https://gist.githubusercontent.com/nickvergessen/e21ee0a09ee3b3f7fd1b04c83dd3e114/raw/83142be1e50c23e8de1bd7aae88a95e5d6ae1ce2/nextcloud_log.json && lnav -i nextcloud_log.json && rm nextcloud_log.json
@@ -63,14 +78,7 @@ ADD configs/php/nextcloud.ini /usr/local/etc/php/conf.d/nextcloud.ini
ADD configs/php/xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
# Setup blackfire probe
RUN wget -q -O - https://packages.blackfire.io/gpg.key | sudo apt-key add - \
&& echo "deb http://packages.blackfire.io/debian any main" | sudo tee /etc/apt/sources.list.d/blackfire.list \
&& apt-get update \
&& (apt-get install -y --no-install-recommends blackfire \
&& mv /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini.disabled \
&& printf "\n\nblackfire.agent_socket=tcp://blackfire:8307\n" >> $PHP_INI_DIR/conf.d/zz-blackfire.ini) \
|| echo "Skipped blackfire as the installation failed" \
&& rm -rf /var/lib/apt/lists/*
RUN mv /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini.disabled
RUN echo "ServerName localhost" >> /etc/apache2/apache2.conf
@@ -85,16 +93,16 @@ VOLUME /var/www/html/apps-writable
VOLUME /var/www/html/config
VOLUME /var/www/html/data
ENV SQL sqlite
ENV NEXTCLOUD_AUTOINSTALL YES
ENV WITH_REDIS NO
ENV SQL=sqlite
ENV NEXTCLOUD_AUTOINSTALL=YES
ENV WITH_REDIS=NO
ENV WEBROOT /var/www/html
ENV WEBROOT=/var/www/html
WORKDIR /var/www/html
ENTRYPOINT ["/usr/local/bin/bootstrap.sh"]
CMD ["apache2-foreground"]
ADD data/installing.html /root/installing.html
ADD configs/autoconfig_mysql.php configs/autoconfig_pgsql.php configs/autoconfig_oci.php configs/default.config.php configs/storage.config.php configs/redis.config.php configs/apcu.config.php /root/
ADD configs/autoconfig_mysql.php configs/autoconfig_pgsql.php configs/autoconfig_oci.php configs/default.config.php configs/redis.config.php configs/apcu.config.php /root/
ADD bin/bootstrap.sh bin/occ /usr/local/bin/
+30 -22
View File
@@ -1,4 +1,4 @@
FROM php:8.4.5-apache
FROM php:7.4-apache
ADD https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions /usr/local/bin/
@@ -29,22 +29,37 @@ RUN install-php-extensions \
# dev tools separate install so we quickly change without rebuilding all php extensions
RUN apt update && apt-get install -y --no-install-recommends \
git curl vim nano sudo cron smbclient iproute2 lnav wget iputils-ping gnupg2 jq ripgrep rsync mariadb-client \
git \
curl \
vim-tiny \
nano \
sudo \
cron \
smbclient \
iproute2 \
lnav \
wget \
iputils-ping \
gnupg2 \
jq \
ripgrep \
rsync \
&& rm -rf /var/lib/apt/lists/*
# Install PHPUnit
RUN wget -O /usr/local/bin/phpunit8 https://phar.phpunit.de/phpunit-8.phar \
&& chmod +x /usr/local/bin/phpunit8 \
&& wget -O /usr/local/bin/phpunit9 https://phar.phpunit.de/phpunit-9.phar \
&& chmod +x /usr/local/bin/phpunit9 \
&& ln -s /usr/local/bin/phpunit9 /usr/local/bin/phpunit
RUN wget -O /usr/local/bin/phpunit11 https://phar.phpunit.de/phpunit-11.phar \
&& chmod +x /usr/local/bin/phpunit11 \
&& wget -O /usr/local/bin/phpunit12 https://phar.phpunit.de/phpunit-12.phar \
&& chmod +x /usr/local/bin/phpunit12 \
&& ln -s /usr/local/bin/phpunit11 /usr/local/bin/phpunit
# Install NVM
RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/master/install.sh | bash \
&& export NVM_DIR="/root/.nvm" \
&& . "$NVM_DIR/nvm.sh" \
&& nvm install 20 \
&& nvm alias default 20
&& nvm install node \
&& nvm alias default node \
&& nvm cache clear
RUN wget https://gist.githubusercontent.com/nickvergessen/e21ee0a09ee3b3f7fd1b04c83dd3e114/raw/83142be1e50c23e8de1bd7aae88a95e5d6ae1ce2/nextcloud_log.json && lnav -i nextcloud_log.json && rm nextcloud_log.json
@@ -63,14 +78,7 @@ ADD configs/php/nextcloud.ini /usr/local/etc/php/conf.d/nextcloud.ini
ADD configs/php/xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
# Setup blackfire probe
RUN wget -q -O - https://packages.blackfire.io/gpg.key | sudo apt-key add - \
&& echo "deb http://packages.blackfire.io/debian any main" | sudo tee /etc/apt/sources.list.d/blackfire.list \
&& apt-get update \
&& (apt-get install -y --no-install-recommends blackfire \
&& mv /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini.disabled \
&& printf "\n\nblackfire.agent_socket=tcp://blackfire:8307\n" >> $PHP_INI_DIR/conf.d/zz-blackfire.ini) \
|| echo "Skipped blackfire as the installation failed" \
&& rm -rf /var/lib/apt/lists/*
RUN mv /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini.disabled
RUN echo "ServerName localhost" >> /etc/apache2/apache2.conf
@@ -85,16 +93,16 @@ VOLUME /var/www/html/apps-writable
VOLUME /var/www/html/config
VOLUME /var/www/html/data
ENV SQL sqlite
ENV NEXTCLOUD_AUTOINSTALL YES
ENV WITH_REDIS NO
ENV SQL=sqlite
ENV NEXTCLOUD_AUTOINSTALL=YES
ENV WITH_REDIS=NO
ENV WEBROOT /var/www/html
ENV WEBROOT=/var/www/html
WORKDIR /var/www/html
ENTRYPOINT ["/usr/local/bin/bootstrap.sh"]
CMD ["apache2-foreground"]
ADD data/installing.html /root/installing.html
ADD configs/autoconfig_mysql.php configs/autoconfig_pgsql.php configs/autoconfig_oci.php configs/default.config.php configs/storage.config.php configs/redis.config.php configs/apcu.config.php /root/
ADD configs/autoconfig_mysql.php configs/autoconfig_pgsql.php configs/autoconfig_oci.php configs/default.config.php configs/redis.config.php configs/apcu.config.php /root/
ADD bin/bootstrap.sh bin/occ /usr/local/bin/
+30 -22
View File
@@ -1,4 +1,4 @@
FROM php:8.4.5-apache
FROM php:8.0-apache
ADD https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions /usr/local/bin/
@@ -29,22 +29,37 @@ RUN install-php-extensions \
# dev tools separate install so we quickly change without rebuilding all php extensions
RUN apt update && apt-get install -y --no-install-recommends \
git curl vim nano sudo cron smbclient iproute2 lnav wget iputils-ping gnupg2 jq ripgrep rsync mariadb-client \
git \
curl \
vim-tiny \
nano \
sudo \
cron \
smbclient \
iproute2 \
lnav \
wget \
iputils-ping \
gnupg2 \
jq \
ripgrep \
rsync \
&& rm -rf /var/lib/apt/lists/*
# Install PHPUnit
RUN wget -O /usr/local/bin/phpunit8 https://phar.phpunit.de/phpunit-8.phar \
&& chmod +x /usr/local/bin/phpunit8 \
&& wget -O /usr/local/bin/phpunit9 https://phar.phpunit.de/phpunit-9.phar \
&& chmod +x /usr/local/bin/phpunit9 \
&& ln -s /usr/local/bin/phpunit9 /usr/local/bin/phpunit
RUN wget -O /usr/local/bin/phpunit11 https://phar.phpunit.de/phpunit-11.phar \
&& chmod +x /usr/local/bin/phpunit11 \
&& wget -O /usr/local/bin/phpunit12 https://phar.phpunit.de/phpunit-12.phar \
&& chmod +x /usr/local/bin/phpunit12 \
&& ln -s /usr/local/bin/phpunit11 /usr/local/bin/phpunit
# Install NVM
RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/master/install.sh | bash \
&& export NVM_DIR="/root/.nvm" \
&& . "$NVM_DIR/nvm.sh" \
&& nvm install 20 \
&& nvm alias default 20
&& nvm install node \
&& nvm alias default node \
&& nvm cache clear
RUN wget https://gist.githubusercontent.com/nickvergessen/e21ee0a09ee3b3f7fd1b04c83dd3e114/raw/83142be1e50c23e8de1bd7aae88a95e5d6ae1ce2/nextcloud_log.json && lnav -i nextcloud_log.json && rm nextcloud_log.json
@@ -63,14 +78,7 @@ ADD configs/php/nextcloud.ini /usr/local/etc/php/conf.d/nextcloud.ini
ADD configs/php/xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
# Setup blackfire probe
RUN wget -q -O - https://packages.blackfire.io/gpg.key | sudo apt-key add - \
&& echo "deb http://packages.blackfire.io/debian any main" | sudo tee /etc/apt/sources.list.d/blackfire.list \
&& apt-get update \
&& (apt-get install -y --no-install-recommends blackfire \
&& mv /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini.disabled \
&& printf "\n\nblackfire.agent_socket=tcp://blackfire:8307\n" >> $PHP_INI_DIR/conf.d/zz-blackfire.ini) \
|| echo "Skipped blackfire as the installation failed" \
&& rm -rf /var/lib/apt/lists/*
RUN mv /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini.disabled
RUN echo "ServerName localhost" >> /etc/apache2/apache2.conf
@@ -85,16 +93,16 @@ VOLUME /var/www/html/apps-writable
VOLUME /var/www/html/config
VOLUME /var/www/html/data
ENV SQL sqlite
ENV NEXTCLOUD_AUTOINSTALL YES
ENV WITH_REDIS NO
ENV SQL=sqlite
ENV NEXTCLOUD_AUTOINSTALL=YES
ENV WITH_REDIS=NO
ENV WEBROOT /var/www/html
ENV WEBROOT=/var/www/html
WORKDIR /var/www/html
ENTRYPOINT ["/usr/local/bin/bootstrap.sh"]
CMD ["apache2-foreground"]
ADD data/installing.html /root/installing.html
ADD configs/autoconfig_mysql.php configs/autoconfig_pgsql.php configs/autoconfig_oci.php configs/default.config.php configs/storage.config.php configs/redis.config.php configs/apcu.config.php /root/
ADD configs/autoconfig_mysql.php configs/autoconfig_pgsql.php configs/autoconfig_oci.php configs/default.config.php configs/redis.config.php configs/apcu.config.php /root/
ADD bin/bootstrap.sh bin/occ /usr/local/bin/
+30 -22
View File
@@ -1,4 +1,4 @@
FROM php:8.4.5-apache
FROM php:8.1-apache
ADD https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions /usr/local/bin/
@@ -29,22 +29,37 @@ RUN install-php-extensions \
# dev tools separate install so we quickly change without rebuilding all php extensions
RUN apt update && apt-get install -y --no-install-recommends \
git curl vim nano sudo cron smbclient iproute2 lnav wget iputils-ping gnupg2 jq ripgrep rsync mariadb-client \
git \
curl \
vim-tiny \
nano \
sudo \
cron \
smbclient \
iproute2 \
lnav \
wget \
iputils-ping \
gnupg2 \
jq \
ripgrep \
rsync \
&& rm -rf /var/lib/apt/lists/*
# Install PHPUnit
RUN wget -O /usr/local/bin/phpunit8 https://phar.phpunit.de/phpunit-8.phar \
&& chmod +x /usr/local/bin/phpunit8 \
&& wget -O /usr/local/bin/phpunit9 https://phar.phpunit.de/phpunit-9.phar \
&& chmod +x /usr/local/bin/phpunit9 \
&& ln -s /usr/local/bin/phpunit9 /usr/local/bin/phpunit
RUN wget -O /usr/local/bin/phpunit11 https://phar.phpunit.de/phpunit-11.phar \
&& chmod +x /usr/local/bin/phpunit11 \
&& wget -O /usr/local/bin/phpunit12 https://phar.phpunit.de/phpunit-12.phar \
&& chmod +x /usr/local/bin/phpunit12 \
&& ln -s /usr/local/bin/phpunit11 /usr/local/bin/phpunit
# Install NVM
RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/master/install.sh | bash \
&& export NVM_DIR="/root/.nvm" \
&& . "$NVM_DIR/nvm.sh" \
&& nvm install 20 \
&& nvm alias default 20
&& nvm install node \
&& nvm alias default node \
&& nvm cache clear
RUN wget https://gist.githubusercontent.com/nickvergessen/e21ee0a09ee3b3f7fd1b04c83dd3e114/raw/83142be1e50c23e8de1bd7aae88a95e5d6ae1ce2/nextcloud_log.json && lnav -i nextcloud_log.json && rm nextcloud_log.json
@@ -63,14 +78,7 @@ ADD configs/php/nextcloud.ini /usr/local/etc/php/conf.d/nextcloud.ini
ADD configs/php/xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
# Setup blackfire probe
RUN wget -q -O - https://packages.blackfire.io/gpg.key | sudo apt-key add - \
&& echo "deb http://packages.blackfire.io/debian any main" | sudo tee /etc/apt/sources.list.d/blackfire.list \
&& apt-get update \
&& (apt-get install -y --no-install-recommends blackfire \
&& mv /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini.disabled \
&& printf "\n\nblackfire.agent_socket=tcp://blackfire:8307\n" >> $PHP_INI_DIR/conf.d/zz-blackfire.ini) \
|| echo "Skipped blackfire as the installation failed" \
&& rm -rf /var/lib/apt/lists/*
RUN mv /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini.disabled
RUN echo "ServerName localhost" >> /etc/apache2/apache2.conf
@@ -85,16 +93,16 @@ VOLUME /var/www/html/apps-writable
VOLUME /var/www/html/config
VOLUME /var/www/html/data
ENV SQL sqlite
ENV NEXTCLOUD_AUTOINSTALL YES
ENV WITH_REDIS NO
ENV SQL=sqlite
ENV NEXTCLOUD_AUTOINSTALL=YES
ENV WITH_REDIS=NO
ENV WEBROOT /var/www/html
ENV WEBROOT=/var/www/html
WORKDIR /var/www/html
ENTRYPOINT ["/usr/local/bin/bootstrap.sh"]
CMD ["apache2-foreground"]
ADD data/installing.html /root/installing.html
ADD configs/autoconfig_mysql.php configs/autoconfig_pgsql.php configs/autoconfig_oci.php configs/default.config.php configs/storage.config.php configs/redis.config.php configs/apcu.config.php /root/
ADD configs/autoconfig_mysql.php configs/autoconfig_pgsql.php configs/autoconfig_oci.php configs/default.config.php configs/redis.config.php configs/apcu.config.php /root/
ADD bin/bootstrap.sh bin/occ /usr/local/bin/
+5 -1
View File
@@ -227,7 +227,11 @@ configure_add_user() {
install() {
DBNAME=$(echo "$VIRTUAL_HOST" | cut -d '.' -f1)
if [ -n "$VIRTUAL_HOST" ]; then
DBNAME=$(echo "$VIRTUAL_HOST" | cut -d '.' -f1)
else
DBNAME="nextcloud"
fi
SQLHOST="database-$SQL"
echo "database name will be $DBNAME"
+46
View File
@@ -109,3 +109,49 @@ if ($primary === 'minio-multibucket') {
),
];
}
if ($primary === 'rustfs') {
$CONFIG += [
'objectstore' =>
array (
'class' => 'OC\\Files\\ObjectStore\\S3',
'arguments' =>
array (
'bucket' => 'nc-' . $hostname,
'key' => 'nextcloud',
'secret' => 'nextcloud',
'hostname' => 'rustfs.local',
'port' => '80',
'proxy' => 'rustfs:9000',
'use_ssl' => false,
'use_path_style' => true,
'use_presigned_url' => true,
'autocreate' => true,
'verify_bucket_exists' => true,
),
)
];
}
if ($primary === 'rustfs-multibucket') {
$CONFIG += [
'objectstore_multibucket' => array(
'class' => 'OC\\Files\\ObjectStore\\S3',
'arguments' => array(
// optional, defaults to 64
'num_buckets' => 64,
// n integer in the range from 0 to (num_buckets-1) will be appended
'bucket' => 'nc-' . $hostname,
'key' => 'nextcloud',
'secret' => 'nextcloud',
'hostname' => 'rustfs.local',
'port' => '80',
'proxy' => 'rustfs:9000',
'use_presigned_url' => true,
'use_ssl' => false,
'use_path_style' => true,
),
),
];
}
-52
View File
@@ -1,52 +0,0 @@
<?php
// FIXME: Move everything except the last part to the containers
// set the hostname to the VIRTUAL_HOST set for the docker container, otherwise fallback to the docker hostname
$hostname = gethostname();
$primary = isset($_ENV['PRIMARY']) ? $_ENV['PRIMARY'] : '';
$virtualHost = isset($_ENV['VIRTUAL_HOST']) ? $_ENV['VIRTUAL_HOST'] : '';
$virtualHost = explode(".", $virtualHost);
if (count($virtualHost) > 0) {
$hostname = array_shift($virtualHost);
}
$CONFIG = [];
if ($primary === 'minio') {
$CONFIG += [
'objectstore' =>
array (
'class' => 'OC\\Files\\ObjectStore\\S3',
'arguments' =>
array (
'bucket' => 'nc-' . $hostname,
'key' => 'nextcloud',
'secret' => 'nextcloud',
'hostname' => 'minio',
'port' => '9000',
'use_ssl' => false,
'use_path_style' => true,
'autocreate' => true,
'verify_bucket_exists' => true,
),
)
];
}
if ($primary === 'minio-multibucket') {
$CONFIG += [
'objectstore_multibucket' => array(
'class' => 'OC\\Files\\ObjectStore\\S3',
'arguments' => array(
// optional, defaults to 64
'num_buckets' => 64,
// n integer in the range from 0 to (num_buckets-1) will be appended
'bucket' => 'nc-' . $hostname,
'key' => 'nextcloud',
'secret' => 'nextcloud',
'hostname' => 'minio',
'port' => '9000',
'use_ssl' => false,
'use_path_style' => true,
),
),
];
}
@@ -21,7 +21,7 @@ $config = array(
* external url, no matter where you come from (direct access or via the
* reverse proxy).
*/
'baseurlpath' => 'https://sso.local.dev.bitgrid.net/simplesaml/',
'baseurlpath' => 'https://sso.local/simplesaml/',
'certdir' => 'cert/',
'loggingdir' => 'log/',
'datadir' => 'data/',
@@ -1,6 +1,6 @@
<?php
$metadata['https://nextcloud.local.dev.bitgrid.net/index.php/apps/user_saml/saml/metadata'] = array (
'entityid' => 'https://nextcloud.local.dev.bitgrid.net/index.php/apps/user_saml/saml/metadata',
$metadata['https://nextcloud.local/index.php/apps/user_saml/saml/metadata'] = array (
'entityid' => 'https://nextcloud.local/index.php/apps/user_saml/saml/metadata',
'contacts' =>
array (
),
@@ -11,7 +11,7 @@ $metadata['https://nextcloud.local.dev.bitgrid.net/index.php/apps/user_saml/saml
0 =>
array (
'Binding' => 'urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST',
'Location' => 'https://nextcloud.local.dev.bitgrid.net/index.php/apps/user_saml/saml/acs',
'Location' => 'https://nextcloud.local/index.php/apps/user_saml/saml/acs',
'index' => 1,
),
),
@@ -20,7 +20,7 @@ $metadata['https://nextcloud.local.dev.bitgrid.net/index.php/apps/user_saml/saml
0 =>
array (
'Binding' => 'urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect',
'Location' => 'https://nextcloud.local.dev.bitgrid.net/index.php/apps/user_saml/saml/sls',
'Location' => 'https://nextcloud.local/index.php/apps/user_saml/saml/sls',
),
),
'NameIDFormat' => 'urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified',
@@ -36,4 +36,4 @@ $metadata['https://nextcloud.local.dev.bitgrid.net/index.php/apps/user_saml/saml
),
'validate.authnrequest' => false,
'saml20.sign.assertion' => false,
);
);
+9
View File
@@ -0,0 +1,9 @@
FROM quay.io/keycloak/keycloak:26.4
RUN mkdir -p /opt/keycloak/data/import
ADD keycloak/Example-realm.json /opt/keycloak/data/import/Example-realm.json
ADD keycloak/prepare.sh /opt/keycloak/bin/custom-kc.sh
ENTRYPOINT ["/opt/keycloak/bin/custom-kc.sh"]
@@ -511,7 +511,7 @@
"containerId" : "6b350bb7-8ea6-438b-be38-fb58f6523f45",
"attributes" : { }
} ],
"http://nextcloud.dev.local/index.php/apps/user_saml/saml/metadata" : [ ]
"http://nextcloud.local/index.php/apps/user_saml/saml/metadata" : [ ]
}
},
"groups" : [ ],
@@ -689,15 +689,15 @@
"optionalClientScopes" : [ "address", "phone", "offline_access", "microprofile-jwt" ]
}, {
"id" : "555c2809-b153-4cf4-8bb1-a6306e5179c7",
"clientId" : "http://nextcloud.dev.local/index.php/apps/user_saml/saml/metadata",
"adminUrl" : "http://keycloak.dev.local/auth/realms/Example",
"clientId" : "http://nextcloud.local/index.php/apps/user_saml/saml/metadata",
"adminUrl" : "http://keycloak.local/auth/realms/Example",
"surrogateAuthRequired" : false,
"enabled" : true,
"alwaysDisplayInConsole" : false,
"clientAuthenticatorType" : "client-secret",
"secret" : "FipRMpAHMklMkZtbQfAKkUhxe7gkRZzR",
"redirectUris" : [ "http://nextcloud.dev.local/index.php/apps/user_saml/saml/acs" ],
"webOrigins" : [ "http://nextcloud.dev.local" ],
"redirectUris" : [ "http://nextcloud.local/index.php/apps/user_saml/saml/acs" ],
"webOrigins" : [ "http://nextcloud.local" ],
"notBefore" : 0,
"bearerOnly" : false,
"consentRequired" : false,
@@ -713,12 +713,12 @@
"client.secret.creation.time" : "1670752721",
"saml.force.post.binding" : "true",
"post.logout.redirect.uris" : "+",
"saml_assertion_consumer_url_post" : "http://nextcloud.dev.local/index.php/apps/user_saml/saml/acs",
"saml_assertion_consumer_url_post" : "http://nextcloud.local/index.php/apps/user_saml/saml/acs",
"saml.server.signature" : "true",
"saml.server.signature.keyinfo.ext" : "false",
"saml.signing.certificate" : "MIICvjCCAaYCCQDS+w+GXVpJsDANBgkqhkiG9w0BAQsFADAhMQswCQYDVQQGEwJERTESMBAGA1UECgwJZGV2LmxvY2FsMB4XDTIyMTIxMDA1MjgxMloXDTIzMDEwOTA1MjgxMlowITELMAkGA1UEBhMCREUxEjAQBgNVBAoMCWRldi5sb2NhbDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOXPQ1YfI0aNUJEVdqFprGGtVMCZ5WIQsk7elS2KqljCHFX6eqpFR8FrQoZgcDVsi4zjX85bAdCPAW2ikfk5hNOypeJx1WSr7mtg/60p0m/T5Lim4QBCyItSARYulV9KYEijIYadTiFQJRE0PJKijlyOZ69FRt3lG+3vqE5xgQc+ZA59Pex7fB/R9jWwORxRMrzZQDP7cvKkvOlq13mR5WbCQkLXG0n6Fd2/Av27TNEP8gkITUlkrv7DkKoHcBRpUGLBuod+C/GM9aZYXxtlIStyIkz27ulsU7+VdNympFkEL+vzRrptW/S0C0RT4xKBbFeA+pCwgoIMeJsnBaAP2OkCAwEAATANBgkqhkiG9w0BAQsFAAOCAQEAOJ3+a1d06LN83gh3iNEvwWNudKVPi7MvyltW2WVBzQBoN2wCYC0crl7PRxXqACvpw2nE2qZaJ0KrrbVWUVMf2lAwRKk4g2F3WcwBjqakWwWEgIDuocLt1WX5nHbI6hb9E2jAwa8wpYbAiRQF5HnZGxI+1ZXKROZvhOPIiAVTv4jTPGr5lgxJ1lKqnVRfKIHZlPWPFGTmuwSkuq+9lwqp/HdCOIiV54c5yi0XBMvEjLhqoE5cxSVNswLF7thD7B2E1NTpyH83Z7rHtK/HDHinUVfOTKhnt15JAf2I2zwh9HErW/Bz4zQlmmBL0uMpgOjTix9h55p2JMuM7/Bd7ng2Dg==",
"saml.artifact.binding.identifier" : "0TDhGxUTNYmRM8Yd/PcR55vLtAs=",
"saml_single_logout_service_url_redirect" : "http://nextcloud.dev.local/index.php/apps/user_saml/saml/sls",
"saml_single_logout_service_url_redirect" : "http://nextcloud.local/index.php/apps/user_saml/saml/sls",
"saml.signature.algorithm" : "RSA_SHA256",
"saml_force_name_id_format" : "false",
"saml.client.signature" : "true",
@@ -775,15 +775,15 @@
}, {
"id" : "a7bab497-e991-491b-aae2-785f049cf361",
"clientId" : "nextcloud",
"rootUrl" : "https://nextcloud.dev.local",
"adminUrl" : "https://nextcloud.dev.local",
"rootUrl" : "http://nextcloud.local",
"adminUrl" : "http://nextcloud.local",
"surrogateAuthRequired" : false,
"enabled" : true,
"alwaysDisplayInConsole" : false,
"clientAuthenticatorType" : "client-secret",
"secret" : "09e3c268-d8bc-42f1-b7c6-74d307ef5fde",
"redirectUris" : [ "https://nextcloud.dev.local/*" ],
"webOrigins" : [ "https://nextcloud.dev.local" ],
"redirectUris" : [ "http://nextcloud.local/*" ],
"webOrigins" : [ "http://nextcloud.local" ],
"notBefore" : 0,
"bearerOnly" : false,
"consentRequired" : false,
+26
View File
@@ -0,0 +1,26 @@
#!/bin/bash
KEYCLOAK_REALM_CONFIG="/opt/keycloak/data/import/Example-realm.json"
PROTOCOL="${PROTOCOL:-http}"
NEXTCLOUD_URL=${PROTOCOL}://${NEXTCLOUD_URL:-nextcloud}${DOMAIN_SUFFIX}
KEYCLOAK_URL=${PROTOCOL}://${KEYCLOAK_URL:-keycloak}${DOMAIN_SUFFIX}
if [ -f "$KEYCLOAK_REALM_CONFIG" ]; then
echo "Preparing Keycloak realm configuration..."
echo "Using NEXTCLOUD_URL: ${NEXTCLOUD_URL}"
echo "Using KEYCLOAK_URL: ${KEYCLOAK_URL}"
# Replace placeholder with actual NEXTCLOUD_URL
sed -i.bak "s|http://nextcloud\\.local|${NEXTCLOUD_URL//./\\.}|g" "$KEYCLOAK_REALM_CONFIG"
sed -i.bak "s|http://keycloak\\.local|${KEYCLOAK_URL//./\\.}|g" "$KEYCLOAK_REALM_CONFIG"
rm -f "${KEYCLOAK_REALM_CONFIG}.bak"
cat "$KEYCLOAK_REALM_CONFIG"
echo "Realm configuration prepared."
else
echo "Realm configuration file not found: $KEYCLOAK_REALM_CONFIG"
fi
exec /opt/keycloak/bin/kc.sh "$@"
+8 -1
View File
@@ -5,4 +5,11 @@ proxy_read_timeout 3600;
proxy_send_timeout 3600;
proxy_connect_timeout 3600;
proxy_set_header X-Forwarded-Proto $scheme;
#proxy_http_version 1.1;
#proxy_set_header Upgrade $http_upgrade;
#proxy_set_header Connection "Upgrade";
proxy_set_header X-Forwarded-Proto https;
# FIXME: remove this when onlyoffice is fixed https to http proxying
# https://github.com/ONLYOFFICE/DocumentServer/issues/2186
proxy_set_header CloudFront-Forwarded-Proto $scheme;
+11
View File
@@ -0,0 +1,11 @@
# VERSION 0.1.0
# Based on https://github.com/JanNash/docker_noop
FROM alpine:latest AS builder
COPY noop/noop.c /
RUN apk add --no-cache gcc musl-dev && gcc -static -o /noop /noop.c
FROM scratch
COPY --from=builder /noop /noop
CMD ["/noop"]
+5
View File
@@ -0,0 +1,5 @@
#include <stdlib.h>
int main() {
exit(0);
}
+29 -21
View File
@@ -29,22 +29,37 @@ RUN install-php-extensions \
# dev tools separate install so we quickly change without rebuilding all php extensions
RUN apt update && apt-get install -y --no-install-recommends \
git curl vim nano sudo cron smbclient iproute2 lnav wget iputils-ping gnupg2 jq ripgrep rsync mariadb-client \
git \
curl \
vim-tiny \
nano \
sudo \
cron \
smbclient \
iproute2 \
lnav \
wget \
iputils-ping \
gnupg2 \
jq \
ripgrep \
rsync \
&& rm -rf /var/lib/apt/lists/*
# Install PHPUnit
RUN wget -O /usr/local/bin/phpunit8 https://phar.phpunit.de/phpunit-8.phar \
&& chmod +x /usr/local/bin/phpunit8 \
&& wget -O /usr/local/bin/phpunit9 https://phar.phpunit.de/phpunit-9.phar \
&& chmod +x /usr/local/bin/phpunit9 \
&& ln -s /usr/local/bin/phpunit9 /usr/local/bin/phpunit
RUN wget -O /usr/local/bin/phpunit11 https://phar.phpunit.de/phpunit-11.phar \
&& chmod +x /usr/local/bin/phpunit11 \
&& wget -O /usr/local/bin/phpunit12 https://phar.phpunit.de/phpunit-12.phar \
&& chmod +x /usr/local/bin/phpunit12 \
&& ln -s /usr/local/bin/phpunit11 /usr/local/bin/phpunit
# Install NVM
RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/master/install.sh | bash \
&& export NVM_DIR="/root/.nvm" \
&& . "$NVM_DIR/nvm.sh" \
&& nvm install 20 \
&& nvm alias default 20
&& nvm install node \
&& nvm alias default node \
&& nvm cache clear
RUN wget https://gist.githubusercontent.com/nickvergessen/e21ee0a09ee3b3f7fd1b04c83dd3e114/raw/83142be1e50c23e8de1bd7aae88a95e5d6ae1ce2/nextcloud_log.json && lnav -i nextcloud_log.json && rm nextcloud_log.json
@@ -63,14 +78,7 @@ ADD configs/php/nextcloud.ini /usr/local/etc/php/conf.d/nextcloud.ini
ADD configs/php/xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
# Setup blackfire probe
RUN wget -q -O - https://packages.blackfire.io/gpg.key | sudo apt-key add - \
&& echo "deb http://packages.blackfire.io/debian any main" | sudo tee /etc/apt/sources.list.d/blackfire.list \
&& apt-get update \
&& (apt-get install -y --no-install-recommends blackfire \
&& mv /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini.disabled \
&& printf "\n\nblackfire.agent_socket=tcp://blackfire:8307\n" >> $PHP_INI_DIR/conf.d/zz-blackfire.ini) \
|| echo "Skipped blackfire as the installation failed" \
&& rm -rf /var/lib/apt/lists/*
RUN mv /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini.disabled
RUN echo "ServerName localhost" >> /etc/apache2/apache2.conf
@@ -85,16 +93,16 @@ VOLUME /var/www/html/apps-writable
VOLUME /var/www/html/config
VOLUME /var/www/html/data
ENV SQL sqlite
ENV NEXTCLOUD_AUTOINSTALL YES
ENV WITH_REDIS NO
ENV SQL=sqlite
ENV NEXTCLOUD_AUTOINSTALL=YES
ENV WITH_REDIS=NO
ENV WEBROOT /var/www/html
ENV WEBROOT=/var/www/html
WORKDIR /var/www/html
ENTRYPOINT ["/usr/local/bin/bootstrap.sh"]
CMD ["apache2-foreground"]
ADD data/installing.html /root/installing.html
ADD configs/autoconfig_mysql.php configs/autoconfig_pgsql.php configs/autoconfig_oci.php configs/default.config.php configs/storage.config.php configs/redis.config.php configs/apcu.config.php /root/
ADD configs/autoconfig_mysql.php configs/autoconfig_pgsql.php configs/autoconfig_oci.php configs/default.config.php configs/redis.config.php configs/apcu.config.php /root/
ADD bin/bootstrap.sh bin/occ /usr/local/bin/
+29 -21
View File
@@ -29,22 +29,37 @@ RUN install-php-extensions \
# dev tools separate install so we quickly change without rebuilding all php extensions
RUN apt update && apt-get install -y --no-install-recommends \
git curl vim nano sudo cron smbclient iproute2 lnav wget iputils-ping gnupg2 jq ripgrep rsync mariadb-client \
git \
curl \
vim-tiny \
nano \
sudo \
cron \
smbclient \
iproute2 \
lnav \
wget \
iputils-ping \
gnupg2 \
jq \
ripgrep \
rsync \
&& rm -rf /var/lib/apt/lists/*
# Install PHPUnit
RUN wget -O /usr/local/bin/phpunit8 https://phar.phpunit.de/phpunit-8.phar \
&& chmod +x /usr/local/bin/phpunit8 \
&& wget -O /usr/local/bin/phpunit9 https://phar.phpunit.de/phpunit-9.phar \
&& chmod +x /usr/local/bin/phpunit9 \
&& ln -s /usr/local/bin/phpunit9 /usr/local/bin/phpunit
RUN wget -O /usr/local/bin/phpunit11 https://phar.phpunit.de/phpunit-11.phar \
&& chmod +x /usr/local/bin/phpunit11 \
&& wget -O /usr/local/bin/phpunit12 https://phar.phpunit.de/phpunit-12.phar \
&& chmod +x /usr/local/bin/phpunit12 \
&& ln -s /usr/local/bin/phpunit11 /usr/local/bin/phpunit
# Install NVM
RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/master/install.sh | bash \
&& export NVM_DIR="/root/.nvm" \
&& . "$NVM_DIR/nvm.sh" \
&& nvm install 20 \
&& nvm alias default 20
&& nvm install node \
&& nvm alias default node \
&& nvm cache clear
RUN wget https://gist.githubusercontent.com/nickvergessen/e21ee0a09ee3b3f7fd1b04c83dd3e114/raw/83142be1e50c23e8de1bd7aae88a95e5d6ae1ce2/nextcloud_log.json && lnav -i nextcloud_log.json && rm nextcloud_log.json
@@ -63,14 +78,7 @@ ADD configs/php/nextcloud.ini /usr/local/etc/php/conf.d/nextcloud.ini
ADD configs/php/xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
# Setup blackfire probe
RUN wget -q -O - https://packages.blackfire.io/gpg.key | sudo apt-key add - \
&& echo "deb http://packages.blackfire.io/debian any main" | sudo tee /etc/apt/sources.list.d/blackfire.list \
&& apt-get update \
&& (apt-get install -y --no-install-recommends blackfire \
&& mv /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini.disabled \
&& printf "\n\nblackfire.agent_socket=tcp://blackfire:8307\n" >> $PHP_INI_DIR/conf.d/zz-blackfire.ini) \
|| echo "Skipped blackfire as the installation failed" \
&& rm -rf /var/lib/apt/lists/*
RUN mv /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini.disabled
RUN echo "ServerName localhost" >> /etc/apache2/apache2.conf
@@ -85,16 +93,16 @@ VOLUME /var/www/html/apps-writable
VOLUME /var/www/html/config
VOLUME /var/www/html/data
ENV SQL sqlite
ENV NEXTCLOUD_AUTOINSTALL YES
ENV WITH_REDIS NO
ENV SQL=sqlite
ENV NEXTCLOUD_AUTOINSTALL=YES
ENV WITH_REDIS=NO
ENV WEBROOT /var/www/html
ENV WEBROOT=/var/www/html
WORKDIR /var/www/html
ENTRYPOINT ["/usr/local/bin/bootstrap.sh"]
CMD ["apache2-foreground"]
ADD data/installing.html /root/installing.html
ADD configs/autoconfig_mysql.php configs/autoconfig_pgsql.php configs/autoconfig_oci.php configs/default.config.php configs/storage.config.php configs/redis.config.php configs/apcu.config.php /root/
ADD configs/autoconfig_mysql.php configs/autoconfig_pgsql.php configs/autoconfig_oci.php configs/default.config.php configs/redis.config.php configs/apcu.config.php /root/
ADD bin/bootstrap.sh bin/occ /usr/local/bin/
+29 -21
View File
@@ -29,22 +29,37 @@ RUN install-php-extensions \
# dev tools separate install so we quickly change without rebuilding all php extensions
RUN apt update && apt-get install -y --no-install-recommends \
git curl vim nano sudo cron smbclient iproute2 lnav wget iputils-ping gnupg2 jq ripgrep rsync mariadb-client \
git \
curl \
vim-tiny \
nano \
sudo \
cron \
smbclient \
iproute2 \
lnav \
wget \
iputils-ping \
gnupg2 \
jq \
ripgrep \
rsync \
&& rm -rf /var/lib/apt/lists/*
# Install PHPUnit
RUN wget -O /usr/local/bin/phpunit8 https://phar.phpunit.de/phpunit-8.phar \
&& chmod +x /usr/local/bin/phpunit8 \
&& wget -O /usr/local/bin/phpunit9 https://phar.phpunit.de/phpunit-9.phar \
&& chmod +x /usr/local/bin/phpunit9 \
&& ln -s /usr/local/bin/phpunit9 /usr/local/bin/phpunit
RUN wget -O /usr/local/bin/phpunit11 https://phar.phpunit.de/phpunit-11.phar \
&& chmod +x /usr/local/bin/phpunit11 \
&& wget -O /usr/local/bin/phpunit12 https://phar.phpunit.de/phpunit-12.phar \
&& chmod +x /usr/local/bin/phpunit12 \
&& ln -s /usr/local/bin/phpunit11 /usr/local/bin/phpunit
# Install NVM
RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/master/install.sh | bash \
&& export NVM_DIR="/root/.nvm" \
&& . "$NVM_DIR/nvm.sh" \
&& nvm install 20 \
&& nvm alias default 20
&& nvm install node \
&& nvm alias default node \
&& nvm cache clear
RUN wget https://gist.githubusercontent.com/nickvergessen/e21ee0a09ee3b3f7fd1b04c83dd3e114/raw/83142be1e50c23e8de1bd7aae88a95e5d6ae1ce2/nextcloud_log.json && lnav -i nextcloud_log.json && rm nextcloud_log.json
@@ -63,14 +78,7 @@ ADD configs/php/nextcloud.ini /usr/local/etc/php/conf.d/nextcloud.ini
ADD configs/php/xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
# Setup blackfire probe
RUN wget -q -O - https://packages.blackfire.io/gpg.key | sudo apt-key add - \
&& echo "deb http://packages.blackfire.io/debian any main" | sudo tee /etc/apt/sources.list.d/blackfire.list \
&& apt-get update \
&& (apt-get install -y --no-install-recommends blackfire \
&& mv /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini.disabled \
&& printf "\n\nblackfire.agent_socket=tcp://blackfire:8307\n" >> $PHP_INI_DIR/conf.d/zz-blackfire.ini) \
|| echo "Skipped blackfire as the installation failed" \
&& rm -rf /var/lib/apt/lists/*
RUN mv /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini.disabled
RUN echo "ServerName localhost" >> /etc/apache2/apache2.conf
@@ -85,16 +93,16 @@ VOLUME /var/www/html/apps-writable
VOLUME /var/www/html/config
VOLUME /var/www/html/data
ENV SQL sqlite
ENV NEXTCLOUD_AUTOINSTALL YES
ENV WITH_REDIS NO
ENV SQL=sqlite
ENV NEXTCLOUD_AUTOINSTALL=YES
ENV WITH_REDIS=NO
ENV WEBROOT /var/www/html
ENV WEBROOT=/var/www/html
WORKDIR /var/www/html
ENTRYPOINT ["/usr/local/bin/bootstrap.sh"]
CMD ["apache2-foreground"]
ADD data/installing.html /root/installing.html
ADD configs/autoconfig_mysql.php configs/autoconfig_pgsql.php configs/autoconfig_oci.php configs/default.config.php configs/storage.config.php configs/redis.config.php configs/apcu.config.php /root/
ADD configs/autoconfig_mysql.php configs/autoconfig_pgsql.php configs/autoconfig_oci.php configs/default.config.php configs/redis.config.php configs/apcu.config.php /root/
ADD bin/bootstrap.sh bin/occ /usr/local/bin/
+108
View File
@@ -0,0 +1,108 @@
FROM php:8.5-apache
ADD https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions /usr/local/bin/
RUN chmod +x /usr/local/bin/install-php-extensions
RUN install-php-extensions \
apcu \
bcmath \
excimer \
exif \
gd \
gmp \
intl \
ldap \
memcached \
oci8 \
opcache \
pcntl \
pdo_mysql \
pdo_pgsql \
redis \
smbclient \
sysvsem \
xdebug \
zip \
blackfire \
@composer
# dev tools separate install so we quickly change without rebuilding all php extensions
RUN apt update && apt-get install -y --no-install-recommends \
git \
curl \
vim-tiny \
nano \
sudo \
cron \
smbclient \
iproute2 \
lnav \
wget \
iputils-ping \
gnupg2 \
jq \
ripgrep \
rsync \
&& rm -rf /var/lib/apt/lists/*
# Install PHPUnit
RUN wget -O /usr/local/bin/phpunit11 https://phar.phpunit.de/phpunit-11.phar \
&& chmod +x /usr/local/bin/phpunit11 \
&& wget -O /usr/local/bin/phpunit12 https://phar.phpunit.de/phpunit-12.phar \
&& chmod +x /usr/local/bin/phpunit12 \
&& ln -s /usr/local/bin/phpunit11 /usr/local/bin/phpunit
# Install NVM
RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/master/install.sh | bash \
&& export NVM_DIR="/root/.nvm" \
&& . "$NVM_DIR/nvm.sh" \
&& nvm install node \
&& nvm alias default node \
&& nvm cache clear
RUN wget https://gist.githubusercontent.com/nickvergessen/e21ee0a09ee3b3f7fd1b04c83dd3e114/raw/83142be1e50c23e8de1bd7aae88a95e5d6ae1ce2/nextcloud_log.json && lnav -i nextcloud_log.json && rm nextcloud_log.json
RUN { \
echo '[global]'; \
echo 'client min protocol = SMB2'; \
echo 'client max protocol = SMB3'; \
echo 'hide dot files = no'; \
} > /etc/samba/smb.conf
RUN mkdir --parent /var/log/cron
ADD configs/cron.conf /etc/nc-cron.conf
RUN crontab /etc/nc-cron.conf
ADD configs/php/nextcloud.ini /usr/local/etc/php/conf.d/nextcloud.ini
ADD configs/php/xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
# Setup blackfire probe
RUN mv /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini /usr/local/etc/php/conf.d/docker-php-ext-blackfire.ini.disabled
RUN echo "ServerName localhost" >> /etc/apache2/apache2.conf
# mod_rewrite
RUN a2enmod rewrite headers
# increase limit request body
RUN echo "LimitRequestBody 0" > /etc/apache2/conf-available/limit-request-body.conf && a2enconf limit-request-body
VOLUME /var/www/html
VOLUME /var/www/html/apps-writable
VOLUME /var/www/html/config
VOLUME /var/www/html/data
ENV SQL=sqlite
ENV NEXTCLOUD_AUTOINSTALL=YES
ENV WITH_REDIS=NO
ENV WEBROOT=/var/www/html
WORKDIR /var/www/html
ENTRYPOINT ["/usr/local/bin/bootstrap.sh"]
CMD ["apache2-foreground"]
ADD data/installing.html /root/installing.html
ADD configs/autoconfig_mysql.php configs/autoconfig_pgsql.php configs/autoconfig_oci.php configs/default.config.php configs/redis.config.php configs/apcu.config.php /root/
ADD bin/bootstrap.sh bin/occ /usr/local/bin/
+5 -1
View File
@@ -1,6 +1,10 @@
FROM alpine
RUN wget https://github.com/nextcloud/notify_push/releases/download/v0.6.3/notify_push-`uname -m`-unknown-linux-musl -O /notify_push && chmod +x /notify_push && /notify_push --version
RUN apk add curl jq \
&& latest_tag=$(curl -Ls https://api.github.com/repos/nextcloud/notify_push/releases/latest | jq -r '.tag_name') \
&& wget https://github.com/nextcloud/notify_push/releases/download/${latest_tag}/notify_push-`uname -m`-unknown-linux-musl -O /notify_push \
&& chmod +x /notify_push \
&& /notify_push --version
EXPOSE 7867
+3 -3
View File
@@ -17,17 +17,17 @@ For app development you can mount your app directly into the container:
```bash
docker run --rm -p 8080:80 \
-v ~/path/to/appid:/var/www/html/apps-extra/appid \
ghcr.io/juliusknorr/nextcloud-dev-php80:latest
ghcr.io/juliusknorr/nextcloud-dev-php81:latest
```
The `SERVER_BRANCH` environment variable can be used to run different versions of Nextcloud by specifying either a server branch or git tag.
```bash
docker run --rm -p 8080:80 -e SERVER_BRANCH=v24.0.1 ghcr.io/juliusknorr/nextcloud-dev-php80:latest
docker run --rm -p 8080:80 -e SERVER_BRANCH=v32.0.1 ghcr.io/juliusknorr/nextcloud-dev-php81:latest
```
You can also mount your local server source code into the container to run a local version of Nextcloud:
```bash
docker run --rm -p 8080:80 -e SERVER_BRANCH=v24.0.1 -v /tmp/server:/var/www/html ghcr.io/juliusknorr/nextcloud-dev-php80:latest
docker run --rm -p 8080:80 -e SERVER_BRANCH=v32.0.1 -v /tmp/server:/var/www/html ghcr.io/juliusknorr/nextcloud-dev-php81:latest
```
+28
View File
@@ -0,0 +1,28 @@
# Notify Push service
Prepare your setup:
* Setup your server with https.
* Install `notify_push` app.
* Start `push` alongside the other services:
```
docker compose up nextcloud proxy push
```
Configure `notify_push` on the nextcloud instance:
* Configure the `notify_push` url:
```
./occ notify_push:setup http://push:7867/push
```
Once `notify_push:setup` finishes you can test the setup:
```bash
./occ notify_push:self-test
```
## Fixing problems:
If the version does not match:
* Alter `docker/push/Dockerfile`.
* Rebuild the image (`docker build .`).
* Replace the push image in `docker-compose.yml`.
* Tear down and restart the push service.
+61 -6
View File
@@ -1,6 +1,61 @@
# S3 / Object storage
S3 can be easily tested with the included container running Minio. This is a self-hosted S3-compatible object storage server.
S3-compatible object storage can be easily tested with the included containers. Two options are available:
- **rustfs** (recommended) - A fast, lightweight S3-compatible object storage server written in Rust
- **minio** - Abandoned S3-compatible object storage server (open-source version moved to maintenance-only mode with stripped-down UI)
## rustfs (Recommended)
rustfs is the preferred option for development and testing due to its performance and simplicity.
### Starting rustfs
Start the container using the following command:
```bash
docker compose up -d rustfs
```
### Primary object storage
Primary object storage can be enabled by setting the `PRIMARY=rustfs` environment variable either in your `.env` file or in `docker-compose.yml` for individual containers.
```bash
PRIMARY=rustfs docker compose up nextcloud rustfs
```
### External object storage
External storage can be configured in the Nextcloud admin settings (configuration labels may depend on app version).
This is an example configuration for the `nc-external` bucket, buckets will be automatically created so you can name any bucket you like:
General:
- External storage: `S3 Storage`
- Authentication: `Static credentials` / `Access Key`
Storage configuration:
- Bucket: `nc-external`
- Hostname: `rustfs`
- Port: `9000`
- Enable SSL: `No`
- Enable Path Style: `Yes`
- Use Legacy S3 signing (v2) / Legacy (v2) Authentication: `No`
Authentication:
- Access Key: `nextcloud`
- Secret Key: `nextcloud`
### Accessing rustfs console
rustfs can be accessed via the browser at <http://rustfs.local> with the following credentials:
- Username: `nextcloud`
- Password: `nextcloud`
## Minio (Alternative)
Minio is a more feature-rich alternative with additional management capabilities. However, critics often point to recent controversial changes, including shifting to a maintenance-only mode for the open-source version and stripping down the UI. For these reasons, rustfs is now the recommended choice for most development workflows.
### Starting Minio
Start the container using the following command:
@@ -8,15 +63,15 @@ Start the container using the following command:
docker compose up -d minio
```
## Primary object storage
### Primary object storage
Primary object storage can be enabled by setting the `PRIMARY=minio` environment variable either in your `.env` file or in `docker-compose.yml` for individual containers.
```bash
docker compose up nextcloud minio
PRIMARY=minio docker compose up nextcloud minio
```
## External object storage
### External object storage
External storage can be configured in the Nextcloud admin settings. This is an example configuration for the `nc-external` bucket, buckets will be autocreated so you can name any bucket you like:
@@ -30,14 +85,14 @@ External storage can be configured in the Nextcloud admin settings. This is an e
- Access Key: `nextcloud`
- Secret Key: `nextcloud`
## Accessing Minio
### Accessing Minio
Minio can be accessed via the browser at <http://minio.local> with the following credentials:
- Username: `nextcloud`
- Password: `nextcloud`
## Using mc command line
### Using mc command line
This can be useful for admin operations like setting a bucket quota on the `nc-external` bucket name:
+14 -5
View File
@@ -4,11 +4,20 @@
## [Keycloak](https://www.keycloak.org/)
- Keycloak is using LDAP as a user backend (make sure the LDAP container is also running)
- `occ user_oidc:provider Keycloak -c nextcloud -s 09e3c268-d8bc-42f1-b7c6-74d307ef5fde -d http://keycloak.dev.local/auth/realms/Example/.well-known/openid-configuration`
- <http://keycloak.dev.local/auth/realms/Example/.well-known/openid-configuration>
- If you have ssl enabled please modify the example realm config accordingly in `docker/configs/keycloak/Example-realm.json`
- `occ user_oidc:provider Keycloak -c nextcloud -s 09e3c268-d8bc-42f1-b7c6-74d307ef5fde -d http://keycloak.local/auth/realms/Example/.well-known/openid-configuration`
- <http://keycloak.local/auth/realms/Example/.well-known/openid-configuration>
- nextcloud
- 09e3c268-d8bc-42f1-b7c6-74d307ef5fde
## Authentik
```
docker compose up -d proxy nextcloud authentik
```
The server will be available on [http://authentik.local:9000](http://authentik.local:9000) and you can follow [authentik documentation](https://integrations.goauthentik.io/chat-communication-collaboration/nextcloud/) to understand how to configure Nextcloud with SAML (but also OIDC and LDAP).
## SAML
```
@@ -16,9 +25,9 @@ docker compose up -d proxy nextcloud saml
```
- uid mapping: `urn:oid:0.9.2342.19200300.100.1.1`
- idp entity id: `https://sso.local.dev.bitgrid.net/simplesaml/saml2/idp/metadata.php`
- Single Sign-On (SSO) service url: `https://sso.local.dev.bitgrid.net/simplesaml/saml2/idp/SSOService.php`
- single log out service url: `https://sso.local.dev.bitgrid.net/simplesaml/saml2/idp/SingleLogoutService.php`
- idp entity id: `https://sso.local/simplesaml/saml2/idp/metadata.php`
- Single Sign-On (SSO) service url: `https://sso.local/simplesaml/saml2/idp/SSOService.php`
- single log out service url: `https://sso.local/simplesaml/saml2/idp/SingleLogoutService.php`
- use certificate from `docker/configs/var-simplesamlphp/cert/example.org.crt`
```
+4
View File
@@ -53,6 +53,10 @@ SQL=mysql
# the entries none, develop, debug, trace, and profile.
PHP_XDEBUG_MODE=develop
# Docker socket location, use it when you run rootless Docker
# Replace "1000" with the uid used by your Docker engine (default $(id -u))
# DOCKER_SOCKET=/run/user/1000/docker.sock
# Nextcloud AppAPI Docker Socket Proxy
# ------------------------------------
# NC_HAPROXY_PASSWORD=some_secure_password
+2
View File
@@ -29,3 +29,5 @@ occ onlyoffice:documentserver --check
docker_compose exec onlyoffice /var/www/onlyoffice/documentserver/npm/json -f /etc/onlyoffice/documentserver/local.json 'services.CoAuthoring.secret.session.string'
docker_compose exec onlyoffice supervisorctl start ds:example
+2 -2
View File
@@ -7,13 +7,13 @@ test.beforeEach(async ({ page }) => {
test.describe('New Todo', () => {
test('see the nextcloud login page', async ({ page }) => {
await expect(page).toHaveTitle('Login Nextcloud');
await expect(page).toHaveTitle('Login Nextcloud');
});
test('login to nextcloud as admin', async ({ page }) => {
await page.fill('#user', 'admin');
await page.fill('#password', 'admin');
await page.getByRole('button', { name: 'Log in' }).click();
await page.getByRole('button', { name: 'Log in', exact: true }).click();
await page.goto('http://nextcloud.local/index.php/apps/files');
});
});
+30 -24
View File
@@ -9,32 +9,34 @@
"version": "1.0.0",
"license": "ISC",
"devDependencies": {
"@playwright/test": "^1.40.1",
"@types/node": "^20.10.2"
"@playwright/test": "^1.52.0",
"@types/node": "^22.15.30"
}
},
"node_modules/@playwright/test": {
"version": "1.40.1",
"resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.40.1.tgz",
"integrity": "sha512-EaaawMTOeEItCRvfmkI9v6rBkF1svM8wjl/YPRrg2N2Wmp+4qJYkWtJsbew1szfKKDm6fPLy4YAanBhIlf9dWw==",
"version": "1.56.1",
"resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.56.1.tgz",
"integrity": "sha512-vSMYtL/zOcFpvJCW71Q/OEGQb7KYBPAdKh35WNSkaZA75JlAO8ED8UN6GUNTm3drWomcbcqRPFqQbLae8yBTdg==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
"playwright": "1.40.1"
"playwright": "1.56.1"
},
"bin": {
"playwright": "cli.js"
},
"engines": {
"node": ">=16"
"node": ">=18"
}
},
"node_modules/@types/node": {
"version": "20.10.2",
"resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.2.tgz",
"integrity": "sha512-37MXfxkb0vuIlRKHNxwCkb60PNBpR94u4efQuN4JgIAm66zfCDXGSAFCef9XUWFovX2R1ok6Z7MHhtdVXXkkIw==",
"version": "22.15.30",
"resolved": "https://registry.npmjs.org/@types/node/-/node-22.15.30.tgz",
"integrity": "sha512-6Q7lr06bEHdlfplU6YRbgG1SFBdlsfNC4/lX+SkhiTs0cpJkOElmWls8PxDFv4yY/xKb8Y6SO0OmSX4wgqTZbA==",
"dev": true,
"license": "MIT",
"dependencies": {
"undici-types": "~5.26.4"
"undici-types": "~6.21.0"
}
},
"node_modules/fsevents": {
@@ -43,6 +45,7 @@
"integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
"dev": true,
"hasInstallScript": true,
"license": "MIT",
"optional": true,
"os": [
"darwin"
@@ -52,40 +55,43 @@
}
},
"node_modules/playwright": {
"version": "1.40.1",
"resolved": "https://registry.npmjs.org/playwright/-/playwright-1.40.1.tgz",
"integrity": "sha512-2eHI7IioIpQ0bS1Ovg/HszsN/XKNwEG1kbzSDDmADpclKc7CyqkHw7Mg2JCz/bbCxg25QUPcjksoMW7JcIFQmw==",
"version": "1.56.1",
"resolved": "https://registry.npmjs.org/playwright/-/playwright-1.56.1.tgz",
"integrity": "sha512-aFi5B0WovBHTEvpM3DzXTUaeN6eN0qWnTkKx4NQaH4Wvcmc153PdaY2UBdSYKaGYw+UyWXSVyxDUg5DoPEttjw==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
"playwright-core": "1.40.1"
"playwright-core": "1.56.1"
},
"bin": {
"playwright": "cli.js"
},
"engines": {
"node": ">=16"
"node": ">=18"
},
"optionalDependencies": {
"fsevents": "2.3.2"
}
},
"node_modules/playwright-core": {
"version": "1.40.1",
"resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.40.1.tgz",
"integrity": "sha512-+hkOycxPiV534c4HhpfX6yrlawqVUzITRKwHAmYfmsVreltEl6fAZJ3DPfLMOODw0H3s1Itd6MDCWmP1fl/QvQ==",
"version": "1.56.1",
"resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.56.1.tgz",
"integrity": "sha512-hutraynyn31F+Bifme+Ps9Vq59hKuUCz7H1kDOcBs+2oGguKkWTU50bBWrtz34OUWmIwpBTWDxaRPXrIXkgvmQ==",
"dev": true,
"license": "Apache-2.0",
"bin": {
"playwright-core": "cli.js"
},
"engines": {
"node": ">=16"
"node": ">=18"
}
},
"node_modules/undici-types": {
"version": "5.26.5",
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz",
"integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==",
"dev": true
"version": "6.21.0",
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz",
"integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==",
"dev": true,
"license": "MIT"
}
}
}
+2 -2
View File
@@ -8,7 +8,7 @@
"author": "",
"license": "ISC",
"devDependencies": {
"@playwright/test": "^1.40.1",
"@types/node": "^20.10.2"
"@playwright/test": "^1.52.0",
"@types/node": "^22.15.30"
}
}