Dateien nach "nextcloud" hochladen
This commit is contained in:
parent
3e8c31704d
commit
be991cf7f6
37
nextcloud/config.json
Normal file
37
nextcloud/config.json
Normal file
|
|
@ -0,0 +1,37 @@
|
||||||
|
{
|
||||||
|
"$schema": "../app-info-schema.json",
|
||||||
|
"name": "Nextcloud",
|
||||||
|
"available": true,
|
||||||
|
"exposable": true,
|
||||||
|
"dynamic_config": true,
|
||||||
|
"port": 8083,
|
||||||
|
"id": "nextcloud",
|
||||||
|
"tipi_version": 24,
|
||||||
|
"version": "26.0.13-apache",
|
||||||
|
"categories": ["data"],
|
||||||
|
"description": "Nextcloud is a self-hosted, open source, and fully-featured cloud storage solution for your personal files, office documents, and photos.",
|
||||||
|
"short_desc": "Productivity platform that keeps you in control",
|
||||||
|
"author": "Nextcloud GmbH",
|
||||||
|
"source": "https://github.com/nextcloud/server",
|
||||||
|
"form_fields": [
|
||||||
|
{
|
||||||
|
"type": "text",
|
||||||
|
"label": "Username",
|
||||||
|
"max": 50,
|
||||||
|
"min": 3,
|
||||||
|
"required": true,
|
||||||
|
"env_variable": "NEXTCLOUD_ADMIN_USER"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "password",
|
||||||
|
"label": "Password",
|
||||||
|
"max": 50,
|
||||||
|
"min": 10,
|
||||||
|
"required": true,
|
||||||
|
"env_variable": "NEXTCLOUD_ADMIN_PASSWORD"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"supported_architectures": ["arm64", "amd64"],
|
||||||
|
"created_at": 1691943801422,
|
||||||
|
"updated_at": 1742038546498
|
||||||
|
}
|
||||||
82
nextcloud/docker-compose.json
Normal file
82
nextcloud/docker-compose.json
Normal file
|
|
@ -0,0 +1,82 @@
|
||||||
|
{
|
||||||
|
"$schema": "../dynamic-compose-schema.json",
|
||||||
|
"services": [
|
||||||
|
{
|
||||||
|
"name": "nextcloud",
|
||||||
|
"image": "nextcloud:26.0.13-apache",
|
||||||
|
"isMain": true,
|
||||||
|
"internalPort": 80,
|
||||||
|
"environment": {
|
||||||
|
"POSTGRES_HOST": "db-nextcloud",
|
||||||
|
"REDIS_HOST": "redis-nextcloud",
|
||||||
|
"POSTGRES_PASSWORD": "tipi",
|
||||||
|
"POSTGRES_USER": "tipi",
|
||||||
|
"POSTGRES_DB": "nextcloud",
|
||||||
|
"NEXTCLOUD_ADMIN_USER": "${NEXTCLOUD_ADMIN_USER}",
|
||||||
|
"NEXTCLOUD_ADMIN_PASSWORD": "${NEXTCLOUD_ADMIN_PASSWORD}",
|
||||||
|
"NEXTCLOUD_TRUSTED_DOMAINS": "${APP_DOMAIN}",
|
||||||
|
"TRUSTED_PROXIES": "172.16.0.0/12",
|
||||||
|
"OVERWRITEPROTOCOL": "${APP_PROTOCOL:-http}"
|
||||||
|
},
|
||||||
|
"dependsOn": ["db-nextcloud", "redis-nextcloud"],
|
||||||
|
"volumes": [
|
||||||
|
{
|
||||||
|
"hostPath": "${APP_DATA_DIR}/data/nextcloud",
|
||||||
|
"containerPath": "/var/www/html"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"extraLabels": {
|
||||||
|
"traefik.http.middlewares.nextcloud.headers.browserXSSFilter": "true",
|
||||||
|
"traefik.http.middlewares.nextcloud.headers.contentTypeNosniff": "true",
|
||||||
|
"traefik.http.middlewares.nextcloud.headers.stsIncludeSubdomains": "true",
|
||||||
|
"traefik.http.middlewares.nextcloud.headers.stsPreload": "true",
|
||||||
|
"traefik.http.middlewares.nextcloud.headers.stsSeconds": "155520011",
|
||||||
|
"traefik.http.middlewares.nextcloud_redirect.redirectregex.permanent": "true",
|
||||||
|
"traefik.http.middlewares.nextcloud_redirect.redirectregex.regex": "https://(.*)/.well-known/(card|cal)dav",
|
||||||
|
"traefik.http.middlewares.nextcloud_redirect.redirectregex.replacement": "https://$${1}/remote.php/dav/",
|
||||||
|
"traefik.http.routers.nextcloud.middlewares": "nextcloud,nextcloud_redirect,nextcloud-https",
|
||||||
|
"traefik.http.middlewares.nextcloud.headers.customRequestHeaders.X-Forwarded-Proto": "https",
|
||||||
|
"traefik.http.middlewares.nextcloud-https.redirectscheme.scheme": "https",
|
||||||
|
"traefik.http.routers.nextcloud-http.middlewares": "nextcloud-https@docker"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "db-nextcloud",
|
||||||
|
"image": "postgres:14.2",
|
||||||
|
"environment": {
|
||||||
|
"POSTGRES_PASSWORD": "tipi",
|
||||||
|
"POSTGRES_USER": "tipi",
|
||||||
|
"POSTGRES_DB": "nextcloud"
|
||||||
|
},
|
||||||
|
"volumes": [
|
||||||
|
{
|
||||||
|
"hostPath": "${APP_DATA_DIR}/data/db",
|
||||||
|
"containerPath": "/var/lib/postgresql/data"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "redis-nextcloud",
|
||||||
|
"image": "redis:6.2.6",
|
||||||
|
"user": "1000:1000",
|
||||||
|
"volumes": [
|
||||||
|
{
|
||||||
|
"hostPath": "${APP_DATA_DIR}/data/redis",
|
||||||
|
"containerPath": "/data"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "cron",
|
||||||
|
"image": "nextcloud:25.0.13-apache",
|
||||||
|
"dependsOn": ["db-nextcloud", "redis-nextcloud"],
|
||||||
|
"volumes": [
|
||||||
|
{
|
||||||
|
"hostPath": "${APP_DATA_DIR}/data/nextcloud",
|
||||||
|
"containerPath": "/var/www/html"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"entrypoint": "/cron.sh"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
85
nextcloud/docker-compose.yml
Normal file
85
nextcloud/docker-compose.yml
Normal file
|
|
@ -0,0 +1,85 @@
|
||||||
|
version: "3.7"
|
||||||
|
|
||||||
|
services:
|
||||||
|
nextcloud:
|
||||||
|
container_name: nextcloud
|
||||||
|
image: nextcloud:26.0.13-apache
|
||||||
|
restart: unless-stopped
|
||||||
|
ports:
|
||||||
|
- ${APP_PORT}:80
|
||||||
|
volumes:
|
||||||
|
- ${APP_DATA_DIR}/data/nextcloud:/var/www/html
|
||||||
|
environment:
|
||||||
|
- POSTGRES_HOST=db-nextcloud
|
||||||
|
- REDIS_HOST=redis-nextcloud
|
||||||
|
- POSTGRES_PASSWORD=tipi
|
||||||
|
- POSTGRES_USER=tipi
|
||||||
|
- POSTGRES_DB=nextcloud
|
||||||
|
- NEXTCLOUD_ADMIN_USER=${NEXTCLOUD_ADMIN_USER}
|
||||||
|
- NEXTCLOUD_ADMIN_PASSWORD=${NEXTCLOUD_ADMIN_PASSWORD}
|
||||||
|
- NEXTCLOUD_TRUSTED_DOMAINS=${APP_DOMAIN}
|
||||||
|
- TRUSTED_PROXIES=172.16.0.0/12
|
||||||
|
- OVERWRITEPROTOCOL=${APP_PROTOCOL:-http}
|
||||||
|
depends_on:
|
||||||
|
- db-nextcloud
|
||||||
|
- redis-nextcloud
|
||||||
|
networks:
|
||||||
|
- tipi_main_network
|
||||||
|
labels:
|
||||||
|
traefik.enable: ${APP_EXPOSED}
|
||||||
|
traefik.http.routers.nextcloud.rule: Host(`${APP_DOMAIN}`)
|
||||||
|
traefik.http.routers.nextcloud.entrypoints: websecure
|
||||||
|
traefik.http.routers.nextcloud.service: nextcloud
|
||||||
|
traefik.http.routers.nextcloud.tls.certresolver: myresolver
|
||||||
|
traefik.http.services.nextcloud.loadbalancer.server.port: 80
|
||||||
|
traefik.http.middlewares.nextcloud.headers.browserXSSFilter: true
|
||||||
|
traefik.http.middlewares.nextcloud.headers.contentTypeNosniff: true
|
||||||
|
traefik.http.middlewares.nextcloud.headers.stsIncludeSubdomains: true
|
||||||
|
traefik.http.middlewares.nextcloud.headers.stsPreload: true
|
||||||
|
traefik.http.middlewares.nextcloud.headers.stsSeconds: 155520011
|
||||||
|
traefik.http.middlewares.nextcloud_redirect.redirectregex.permanent: true
|
||||||
|
traefik.http.middlewares.nextcloud_redirect.redirectregex.regex: https://(.*)/.well-known/(card|cal)dav
|
||||||
|
traefik.http.middlewares.nextcloud_redirect.redirectregex.replacement: https://$${1}/remote.php/dav/
|
||||||
|
traefik.http.routers.nextcloud.middlewares: nextcloud,nextcloud_redirect,nextcloud-https
|
||||||
|
traefik.http.middlewares.nextcloud.headers.customRequestHeaders.X-Forwarded-Proto: https
|
||||||
|
traefik.http.middlewares.nextcloud-https.redirectscheme.scheme: https
|
||||||
|
traefik.http.routers.nextcloud-http.middlewares: nextcloud-https@docker
|
||||||
|
runtipi.managed: true
|
||||||
|
db-nextcloud:
|
||||||
|
container_name: db-nextcloud
|
||||||
|
image: postgres:14.2
|
||||||
|
restart: on-failure
|
||||||
|
volumes:
|
||||||
|
- ${APP_DATA_DIR}/data/db:/var/lib/postgresql/data
|
||||||
|
environment:
|
||||||
|
- POSTGRES_PASSWORD=tipi
|
||||||
|
- POSTGRES_USER=tipi
|
||||||
|
- POSTGRES_DB=nextcloud
|
||||||
|
networks:
|
||||||
|
- tipi_main_network
|
||||||
|
labels:
|
||||||
|
runtipi.managed: true
|
||||||
|
redis-nextcloud:
|
||||||
|
container_name: redis-nextcloud
|
||||||
|
user: "1000:1000"
|
||||||
|
image: redis:6.2.6
|
||||||
|
restart: on-failure
|
||||||
|
volumes:
|
||||||
|
- "${APP_DATA_DIR}/data/redis:/data"
|
||||||
|
networks:
|
||||||
|
- tipi_main_network
|
||||||
|
labels:
|
||||||
|
runtipi.managed: true
|
||||||
|
cron:
|
||||||
|
image: nextcloud:25.0.13-apache
|
||||||
|
restart: on-failure
|
||||||
|
volumes:
|
||||||
|
- ${APP_DATA_DIR}/data/nextcloud:/var/www/html
|
||||||
|
entrypoint: /cron.sh
|
||||||
|
depends_on:
|
||||||
|
- db-nextcloud
|
||||||
|
- redis-nextcloud
|
||||||
|
networks:
|
||||||
|
- tipi_main_network
|
||||||
|
labels:
|
||||||
|
runtipi.managed: true
|
||||||
Loading…
Reference in New Issue
Block a user