forked from coop-cloud/nextcloud
Compare commits
12
Commits
main
...
version_35
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c52926e2f0 | ||
|
|
da9c3c2419 | ||
|
|
3d72f76acd
|
||
|
|
65668dcd1d
|
||
|
|
c57f6ab976 | ||
|
|
920edc252d | ||
|
|
542e980be0 | ||
|
|
9d25f7ee3c | ||
|
|
d962af51f6 | ||
|
|
6a0637493a
|
||
|
|
c02073abe1 | ||
|
|
931b403f3e |
@@ -69,6 +69,11 @@ DEFAULT_QUOTA="10 GB"
|
|||||||
# APPS="$APPS onlyoffice"
|
# APPS="$APPS onlyoffice"
|
||||||
# SECRET_ONLYOFFICE_JWT_VERSION=v1
|
# SECRET_ONLYOFFICE_JWT_VERSION=v1
|
||||||
|
|
||||||
|
# COMPOSE_FILE="$COMPOSE_FILE:compose.eurooffice.yml"
|
||||||
|
# EUROOFFICE_URL=https://euro-office.example.com
|
||||||
|
# APPS="$APPS eurooffice"
|
||||||
|
# SECRET_EURO_JWT_VERSION=v1
|
||||||
|
|
||||||
# COMPOSE_FILE="$COMPOSE_FILE:compose.bbb.yml"
|
# COMPOSE_FILE="$COMPOSE_FILE:compose.bbb.yml"
|
||||||
# BBB_URL=https://talk.example.org/bigbluebutton/ # trailing slash!
|
# BBB_URL=https://talk.example.org/bigbluebutton/ # trailing slash!
|
||||||
# SECRET_BBB_SECRET_VERSION=v1
|
# SECRET_BBB_SECRET_VERSION=v1
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
Fully automated luxury Nextcloud via docker-swarm.
|
Fully automated luxury Nextcloud via docker-swarm.
|
||||||
|
|
||||||
<!-- metadata -->
|
<!-- metadata -->
|
||||||
* **Maintainer**: [@dannygroenewegen](https://git.coopcloud.tech/dannygroenewegen), [@ineiti](https://git.coopcloud.tech/ineiti), [@javielico](https://git.coopcloud.tech/javielico), Local-IT: [@moritz](https://git.coopcloud.tech/moritz), [@msimon](https://git.coopcloud.tech/simon), [@carla](https://git.coopcloud.tech/carla)
|
* **Maintainer**: [@dannygroenewegen](https://git.coopcloud.tech/dannygroenewegen), [@ineiti](https://git.coopcloud.tech/ineiti), [@javielico](https://git.coopcloud.tech/javielico), Local-IT: [@moritz](https://git.coopcloud.tech/moritz), [@simon](https://git.coopcloud.tech/simon), [@carla](https://git.coopcloud.tech/carla)
|
||||||
* **Category**: Apps
|
* **Category**: Apps
|
||||||
* **Status**: 5
|
* **Status**: 5
|
||||||
* **Image**: [`nextcloud`](https://hub.docker.com/_/nextcloud), 4, upstream
|
* **Image**: [`nextcloud`](https://hub.docker.com/_/nextcloud), 4, upstream
|
||||||
@@ -44,6 +44,34 @@ Then set the onlyoffice JWT secret from the onlyoffice installation:
|
|||||||
* `abra app secret insert <app-name> onlyoffice_jwt v1 <jwt_secret>`
|
* `abra app secret insert <app-name> onlyoffice_jwt v1 <jwt_secret>`
|
||||||
* `abra app cmd <app-name> app install_onlyoffice`
|
* `abra app cmd <app-name> app install_onlyoffice`
|
||||||
|
|
||||||
|
### Euro-Office Integration
|
||||||
|
|
||||||
|
First, deploy the [Euro-Office Recipe](https://recipes.coopcloud.tech/euro-office),
|
||||||
|
and keep its JWT secret. Then configure your nextcloud instance with:
|
||||||
|
|
||||||
|
`abra app config <app-name>`
|
||||||
|
|
||||||
|
Configure the following envs with the URL of the euro-office service:
|
||||||
|
```
|
||||||
|
COMPOSE_FILE="$COMPOSE_FILE:compose.eurooffice.yml"
|
||||||
|
EUROOFFICE_URL=https://euro-office.example.com
|
||||||
|
SECRET_EURO_JWT_VERSION=v1
|
||||||
|
```
|
||||||
|
|
||||||
|
Then set the euro-office JWT secret from the euro-office installation:
|
||||||
|
|
||||||
|
`abra app secret insert <app-name> euro_jwt v1 <jwt_secret>`
|
||||||
|
|
||||||
|
Now make sure that your nextcloud recipe is correctly deployed.
|
||||||
|
If it's a fresh install, deploy it, if Euro-Office is added after
|
||||||
|
the install, force-deploy it to update the configuration variables:
|
||||||
|
|
||||||
|
`abra app deploy -f <app-name>`
|
||||||
|
|
||||||
|
Once that is up and running, install the eurooffice plugin for nextcloud:
|
||||||
|
|
||||||
|
`abra app cmd <app-name> app install_eurooffice`
|
||||||
|
|
||||||
### BBB Integration
|
### BBB Integration
|
||||||
|
|
||||||
`abra app config <app-name>`
|
`abra app config <app-name>`
|
||||||
|
|||||||
@@ -84,6 +84,12 @@ install_onlyoffice() {
|
|||||||
set_app_config onlyoffice customizationForcesave true
|
set_app_config onlyoffice customizationForcesave true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
install_eurooffice() {
|
||||||
|
install_apps eurooffice
|
||||||
|
set_app_config eurooffice DocumentServerUrl "$EUROOFFICE_URL"
|
||||||
|
set_app_config eurooffice jwt_secret "$(cat /run/secrets/euro_jwt)"
|
||||||
|
}
|
||||||
|
|
||||||
install_collabora() {
|
install_collabora() {
|
||||||
install_apps richdocuments
|
install_apps richdocuments
|
||||||
set_app_config richdocuments wopi_url "$COLLABORA_URL"
|
set_app_config richdocuments wopi_url "$COLLABORA_URL"
|
||||||
@@ -96,7 +102,13 @@ install_collabora() {
|
|||||||
install_whiteboard() {
|
install_whiteboard() {
|
||||||
install_apps whiteboard
|
install_apps whiteboard
|
||||||
set_app_config whiteboard collabBackendUrl "https://${DOMAIN}/whiteboard"
|
set_app_config whiteboard collabBackendUrl "https://${DOMAIN}/whiteboard"
|
||||||
set_app_config whiteboard jwt_secret_key "$(cat /run/secrets/whiteboard_jwt)"
|
printf '{"apps":{"whiteboard":{"jwt_secret_key":"%s"}}}' "$(cat /run/secrets/whiteboard_jwt)" >/tmp/whiteboard.json
|
||||||
|
run_occ "config:import /tmp/whiteboard.json"
|
||||||
|
rm -f /tmp/whiteboard.json
|
||||||
|
[ -n "$(run_occ 'config:app:get whiteboard jwt_secret_key')" ] || {
|
||||||
|
echo "whiteboard jwt_secret_key was not stored" >&2
|
||||||
|
return 1
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,13 @@
|
|||||||
|
version: "3.8"
|
||||||
|
|
||||||
|
services:
|
||||||
|
app:
|
||||||
|
secrets:
|
||||||
|
- euro_jwt
|
||||||
|
environment:
|
||||||
|
- EUROOFFICE_URL
|
||||||
|
|
||||||
|
secrets:
|
||||||
|
euro_jwt:
|
||||||
|
external: true
|
||||||
|
name: ${STACK_NAME}_euro_jwt_${SECRET_EURO_JWT_VERSION}
|
||||||
@@ -2,7 +2,7 @@ version: "3.8"
|
|||||||
|
|
||||||
services:
|
services:
|
||||||
elasticsearch:
|
elasticsearch:
|
||||||
image: "docker.elastic.co/elasticsearch/elasticsearch:8.19.22"
|
image: "docker.elastic.co/elasticsearch/elasticsearch:8.19.23"
|
||||||
environment:
|
environment:
|
||||||
- cluster.name=docker-cluster
|
- cluster.name=docker-cluster
|
||||||
- bootstrap.memory_lock=true
|
- bootstrap.memory_lock=true
|
||||||
@@ -29,7 +29,7 @@ services:
|
|||||||
mode: 0600
|
mode: 0600
|
||||||
|
|
||||||
searchindexer:
|
searchindexer:
|
||||||
image: nextcloud:33.0.9-fpm
|
image: nextcloud:35.0.2-fpm
|
||||||
volumes:
|
volumes:
|
||||||
- nextcloud:/var/www/html/
|
- nextcloud:/var/www/html/
|
||||||
- nextapps:/var/www/html/custom_apps:cached
|
- nextapps:/var/www/html/custom_apps:cached
|
||||||
|
|||||||
+3
-3
@@ -48,7 +48,7 @@ services:
|
|||||||
start_period: 5m
|
start_period: 5m
|
||||||
|
|
||||||
app:
|
app:
|
||||||
image: nextcloud:33.0.9-fpm
|
image: nextcloud:35.0.2-fpm
|
||||||
depends_on:
|
depends_on:
|
||||||
- db
|
- db
|
||||||
configs:
|
configs:
|
||||||
@@ -95,7 +95,7 @@ services:
|
|||||||
failure_action: rollback
|
failure_action: rollback
|
||||||
order: start-first
|
order: start-first
|
||||||
labels:
|
labels:
|
||||||
- "coop-cloud.${STACK_NAME}.version=14.5.0+33.0.9-fpm"
|
- "coop-cloud.${STACK_NAME}.version=15.0.0+34.0.5-fpm"
|
||||||
- "coop-cloud.${STACK_NAME}.timeout=${TIMEOUT}"
|
- "coop-cloud.${STACK_NAME}.timeout=${TIMEOUT}"
|
||||||
- "backupbot.backup=${ENABLE_BACKUPS:-true}"
|
- "backupbot.backup=${ENABLE_BACKUPS:-true}"
|
||||||
- "backupbot.backup.volumes.redis=false"
|
- "backupbot.backup.volumes.redis=false"
|
||||||
@@ -109,7 +109,7 @@ services:
|
|||||||
start_period: 15m
|
start_period: 15m
|
||||||
|
|
||||||
cron:
|
cron:
|
||||||
image: nextcloud:33.0.9-fpm
|
image: nextcloud:35.0.2-fpm
|
||||||
volumes:
|
volumes:
|
||||||
- nextcloud:/var/www/html/
|
- nextcloud:/var/www/html/
|
||||||
- nextapps:/var/www/html/custom_apps:cached
|
- nextapps:/var/www/html/custom_apps:cached
|
||||||
|
|||||||
@@ -0,0 +1 @@
|
|||||||
|
Rolling release for nextcloud-33: the image is pinned to `nextcloud:33-fpm` (no minor/patch), so it follows the latest 33.x. This is the last release before moving to nextcloud-34.
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
Upgrades Nextcloud from 33 to 34 (major version upgrade).
|
||||||
|
|
||||||
|
IMPORTANT:
|
||||||
|
- Do not skip major versions: your instance must be on the latest 33.x before
|
||||||
|
upgrading to 34.
|
||||||
|
- Use `check_major_upgrade` (`abra app cmd <app-name> app check_major_upgrade`)
|
||||||
|
to check whether an instance is ready to upgrade to the next Nextcloud
|
||||||
|
major version.
|
||||||
|
- Nextcloud does NOT support downgrades. Take a backup before deploying.
|
||||||
|
- After deploying, check the logs and run any pending repair/upgrade steps:
|
||||||
|
`abra app cmd <app> app run_occ '"app:update --all"'`
|
||||||
|
- Review app (plug-in) compatibility with Nextcloud 34 before upgrading; some
|
||||||
|
apps may need to be updated or temporarily disabled.
|
||||||
|
|
||||||
|
- This release adds support for Euro-Office, see the README.md for instructions.
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
Upgrades Nextcloud from 34 to 35 (major version upgrade).
|
||||||
|
|
||||||
|
IMPORTANT:
|
||||||
|
- Do not skip major versions: your instance must be on the latest 34.x before
|
||||||
|
upgrading to 35.
|
||||||
|
- Use `check_major_upgrade` (`abra app cmd <app-name> app check_major_upgrade`)
|
||||||
|
to check whether an instance is ready to upgrade to the next Nextcloud
|
||||||
|
major version.
|
||||||
|
- Nextcloud does NOT support downgrades. Take a backup before deploying.
|
||||||
|
- After deploying, check the logs and run any pending repair/upgrade steps:
|
||||||
|
`abra app cmd <app> app run_occ '"app:update --all"'`
|
||||||
|
- Review app (plug-in) compatibility with Nextcloud 35 before upgrading; some
|
||||||
|
apps may need to be updated or temporarily disabled.
|
||||||
Reference in New Issue
Block a user