added nextcloud standalone
This commit is contained in:
parent
9fa6b16bed
commit
2badc54f91
|
@ -11,11 +11,18 @@ services:
|
|||
- --providers.docker.network=proxy
|
||||
- --serversTransport.insecureSkipVerify=true
|
||||
- --api
|
||||
#Lets Encrypt
|
||||
- --certificatesresolvers.letsencrypt.acme.caserver=https://acme-staging-v02.api.letsencrypt.org/directory
|
||||
- --certificatesresolvers.letsencrypt.acme.email=${ACME_EMAIL}
|
||||
- --certificatesresolvers.letsencrypt.acme.storage=/acme.json
|
||||
- --certificatesresolvers.letsencrypt.acme.tlschallenge=true
|
||||
|
||||
- "--certificatesresolvers.letsencrypt.acme.httpchallenge=true"
|
||||
- "--certificatesresolvers.letsencrypt.acme.httpchallenge.entrypoint=web"
|
||||
#- "--certificatesresolvers.letsencrypt.acme.caserver=https://acme-staging-v02.api.letsencrypt.org/directory"
|
||||
- "--certificatesresolvers.letsencrypt.acme.email=${ACME_EMAIL}"
|
||||
- "--certificatesresolvers.letsencrypt.acme.storage=/letsencrypt/acme.json"
|
||||
|
||||
#Lets Encrypt TLS Challenge
|
||||
#- --certificatesresolvers.letsencrypt.acme.caserver=https://acme-staging-v02.api.letsencrypt.org/directory
|
||||
#- --certificatesresolvers.letsencrypt.acme.email=${ACME_EMAIL}
|
||||
#- --certificatesresolvers.letsencrypt.acme.storage=/acme.json
|
||||
#- --certificatesresolvers.letsencrypt.acme.tlschallenge=true
|
||||
#Logging
|
||||
- "--accesslog=true"
|
||||
- "--accesslog.filePath=/logs/access.log"
|
||||
|
@ -28,12 +35,12 @@ services:
|
|||
- /etc/timezone:/etc/timezone:ro
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
- "/var/run/docker.sock:/var/run/docker.sock:ro"
|
||||
- "./data/letsencrypt/acme.json:/acme.json"
|
||||
- "./data/letsencrypt:/letsencrypt"
|
||||
- ./data/logs/:/logs/
|
||||
labels:
|
||||
# Dashboard
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.traefik.rule=Host(`treafik.dev.mertens.digital`)"
|
||||
- "traefik.http.routers.traefik.rule=Host(`traefik.dev.mertens.digital`)"
|
||||
- "traefik.http.routers.traefik.service=api@internal"
|
||||
- "traefik.http.routers.traefik.tls.certresolver=letsencrypt"
|
||||
- "traefik.http.routers.traefik.entrypoints=websecure"
|
||||
|
@ -54,22 +61,22 @@ services:
|
|||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
|
||||
whoami:
|
||||
image: traefik/whoami
|
||||
command:
|
||||
- --port=2001
|
||||
- --name=test
|
||||
ports:
|
||||
- "2001:2001"
|
||||
networks:
|
||||
- proxy
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.whoami.entrypoints=websecure"
|
||||
- "traefik.http.routers.whoami.rule=Host(`whoami.dev.mertens.digital`)"
|
||||
- "traefik.http.routers.whoami.tls=true"
|
||||
- "traefik.http.routers.whoami.tls.certresolver=letsencrypt"
|
||||
- "traefik.http.services.whoami.loadbalancer.server.port=2001"
|
||||
# whoami:
|
||||
# image: traefik/whoami
|
||||
# command:
|
||||
# - --port=2001
|
||||
# - --name=test
|
||||
# ports:
|
||||
# - "2001:2001"
|
||||
# networks:
|
||||
# - proxy
|
||||
# labels:
|
||||
# - "traefik.enable=true"
|
||||
# - "traefik.http.routers.whoami.entrypoints=websecure"
|
||||
# - "traefik.http.routers.whoami.rule=Host(`whoami.dev.mertens.digital`)"
|
||||
# - "traefik.http.routers.whoami.tls=true"
|
||||
# - "traefik.http.routers.whoami.tls.certresolver=letsencrypt"
|
||||
# - "traefik.http.services.whoami.loadbalancer.server.port=2001"
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,24 +1,29 @@
|
|||
version: '3'
|
||||
|
||||
services:
|
||||
|
||||
app:
|
||||
image: nextcloud
|
||||
restart: always
|
||||
networks:
|
||||
- caddy
|
||||
- proxy
|
||||
- nextcloud
|
||||
labels:
|
||||
caddy: ${HOSTNAME}
|
||||
caddy.reverse_proxy: "{{upstreams http 80}}"
|
||||
caddy.0_redir: "/.well-known/carddav /remote.php/dav 301"
|
||||
caddy.1_redir: "/.well-known/caldav /remote.php/dav 301"
|
||||
caddy.header: "Strict-Transport-Security max-age=15552000"
|
||||
caddy.tls: "internal"
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.nextcloud.rule=Host(`${HOSTNAME}`)"
|
||||
- "traefik.http.routers.nextcloud.service=nextcloud"
|
||||
- "traefik.http.routers.nextcloud.entrypoints=websecure"
|
||||
- "traefik.http.services.nextcloud.loadbalancer.server.port=80"
|
||||
- "traefik.http.routers.nextcloud.tls=true"
|
||||
- "traefik.http.routers.nextcloud.tls.certresolver=letsencrypt"
|
||||
- "traefik.http.services.nextcloud.loadbalancer.passhostheader=true"
|
||||
- "traefik.http.routers.nextcloud.middlewares=compresstraefik"
|
||||
- "traefik.http.middlewares.compresstraefik.compress=true"
|
||||
volumes:
|
||||
- ./data/nextcloud/www:/var/www/html
|
||||
- ./default-config/preview.config.php:/var/www/html/config/preview.config.php
|
||||
#- ./default-config/preview.config.php:/var/www/html/config/preview.config.php
|
||||
depends_on:
|
||||
- clamav
|
||||
#- clamav
|
||||
- preview
|
||||
- db
|
||||
- redis
|
||||
|
@ -42,14 +47,38 @@ services:
|
|||
- PORT=9000
|
||||
command: -concurrency 50 -enable-url-source
|
||||
|
||||
clamav:
|
||||
image: "clamav/clamav:stable_base"
|
||||
container_name: "clamav"
|
||||
networks:
|
||||
- nextcloud
|
||||
volumes:
|
||||
- ./data/clamav/virus_db:/var/lib/clamav/ # Virus database
|
||||
collabora-code:
|
||||
image: collabora/code
|
||||
container_name: collabora-code
|
||||
cap_add:
|
||||
- MKNOD
|
||||
ports:
|
||||
- 9980:9980
|
||||
environment:
|
||||
- "domain=cloud\\.dev\\.mertens\\.digital"
|
||||
- username=admin
|
||||
- "extra_params=--o:ssl.enable=false --o:ssl.termination=true"
|
||||
- password=CREATE-A-SECURE-PASSWORD-HERE
|
||||
restart: unless-stopped
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.collabora.entrypoints=websecure"
|
||||
- "traefik.http.routers.collabora.rule=Host(`${COLLABORA_FQDN}`)"
|
||||
- "traefik.http.routers.collabora.tls=true"
|
||||
- "traefik.http.routers.collabora.tls.certresolver=letsencrypt"
|
||||
- "traefik.http.services.collabora.loadbalancer.server.port=9980"
|
||||
#- "traefik.http.services.collabora.loadbalancer.passhostheader=true"
|
||||
networks:
|
||||
- proxy
|
||||
|
||||
# clamav:
|
||||
# image: "clamav/clamav:stable_base"
|
||||
# container_name: "clamav"
|
||||
# networks:
|
||||
# - nextcloud
|
||||
# volumes:
|
||||
# - ./data/clamav/virus_db:/var/lib/clamav/ # Virus database
|
||||
# restart: unless-stopped
|
||||
|
||||
# Does Not Work
|
||||
#notify_push:
|
||||
|
@ -89,12 +118,12 @@ services:
|
|||
|
||||
|
||||
db:
|
||||
container_name: db
|
||||
image: postgres:alpine
|
||||
restart: always
|
||||
networks:
|
||||
- nextcloud
|
||||
environment:
|
||||
POSTGRES_DB: nextcloud
|
||||
POSTGRES_USER: ${POSTGRES_USER}
|
||||
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
||||
volumes:
|
||||
|
@ -111,5 +140,5 @@ services:
|
|||
networks:
|
||||
nextcloud:
|
||||
internal: true
|
||||
caddy:
|
||||
proxy:
|
||||
external: true
|
Loading…
Reference in a new issue