Use nextcloud official image with a proper DB

This commit is contained in:
Jean Froment 2020-10-23 11:28:50 +02:00
parent 7923d786f2
commit 331beeb0b3
2 changed files with 68 additions and 30 deletions

View File

@ -10,12 +10,15 @@ HTTP_PASSWORD='mypassword_encoded' # Keep these simple quotes!
PGID=1000 PGID=1000
PUID=1000 PUID=1000
# Database (for Owncloud)
MYSQL_ROOT_PASSWORD=h4ckMePleAse889912101
MYSQL_DATABASE=nextcloud
MYSQL_USER=nextcloud
MYSQL_PASSWORD=h4ckMePleAse4256718
# Nextcloud # Nextcloud
NEXTCLOUD_ADMIN_USER=admin NEXTCLOUD_ADMIN_USER=admin
NEXTCLOUD_ADMIN_PASSWORD=nextcloud_admin_password NEXTCLOUD_ADMIN_PASSWORD=h4ckMePleAse873214668
NEXTCLOUD_DB_NAME=nextcloud_db_name
NEXTCLOUD_DB_USER=nextcloud
NEXTCLOUD_DB_PASSWORD=nextcloud_db_password
# Portainer # Portainer
PORTAINER_ADMIN_PASSWORD=h4ckMePleAse PORTAINER_ADMIN_PASSWORD=h4ckMePleAse

View File

@ -196,31 +196,72 @@ services:
- "traefik.http.routers.jdownloader.tls.certresolver=le" - "traefik.http.routers.jdownloader.tls.certresolver=le"
- "traefik.http.routers.jdownloader.middlewares=common-auth@file" - "traefik.http.routers.jdownloader.middlewares=common-auth@file"
# nextcloud:
# image: wonderfall/nextcloud
# container_name: nextcloud
# restart: always
# volumes:
# - confignextcloud:/config
# - nextclouddata:/data
# - torrents:/torrents
# - config:/seedbox-config
# environment:
# - GID=${PGID}
# - UID=${PUID}
# - TZ=Europe/Paris
# - ADMIN_USER=${NEXTCLOUD_ADMIN_USER}
# - ADMIN_PASSWORD=${NEXTCLOUD_ADMIN_PASSWORD}
# - DOMAIN=nextcloud.${TRAEFIK_DOMAIN}
# - DB_TYPE=sqlite3
# - DB_NAME=${NEXTCLOUD_DB_NAME}
# - DB_USER=${NEXTCLOUD_DB_USER}
# - DB_PASSWORD=${NEXTCLOUD_DB_PASSWORD}
# labels:
# - "traefik.enable=true"
# - "traefik.http.routers.nextcloud.rule=Host(`nextcloud.${TRAEFIK_DOMAIN}`)"
# - "traefik.http.routers.nextcloud.entrypoints=secure"
# - "traefik.http.routers.nextcloud.tls.certresolver=le"
nextcloud-db:
image: mariadb:10
container_name: nextcloud-db
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
restart: always
environment:
- MYSQL_RANDOM_ROOT_PASSWORD="yes"
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
- MYSQL_DATABASE=${MYSQL_DATABASE}
- MYSQL_USER=${MYSQL_USER}
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
- TZ=Europe/Paris
- DOMAIN=nextcloud.${TRAEFIK_DOMAIN}
volumes:
- nextclouddb:/var/lib/mysql
labels:
- "traefik.enable=false"
nextcloud: nextcloud:
image: wonderfall/nextcloud depends_on:
- nextcloud-db
image: nextcloud:20
container_name: nextcloud container_name: nextcloud
restart: always restart: always
environment:
- MYSQL_HOST="nextcloud-db"
- MYSQL_DATABASE=${MYSQL_DATABASE}
- MYSQL_USER=${MYSQL_USER}
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
- NEXTCLOUD_ADMIN_USER=${NEXTCLOUD_ADMIN_USER}
- NEXTCLOUD_ADMIN_PASSWORD=${NEXTCLOUD_ADMIN_PASSWORD}
- NEXTCLOUD_TRUSTED_DOMAINS="nextcloud.${TRAEFIK_DOMAIN}"
volumes: volumes:
- confignextcloud:/config - confignextcloud:/var/www/html/
- nextclouddata:/data
- torrents:/torrents - torrents:/torrents
- config:/seedbox-config - config:/seedbox-config
environment:
- GID=${PGID}
- UID=${PUID}
- TZ=Europe/Paris
- ADMIN_USER=${NEXTCLOUD_ADMIN_USER}
- ADMIN_PASSWORD=${NEXTCLOUD_ADMIN_PASSWORD}
- DOMAIN=nextcloud.${TRAEFIK_DOMAIN}
- DB_TYPE=sqlite3
- DB_NAME=${NEXTCLOUD_DB_NAME}
- DB_USER=${NEXTCLOUD_DB_USER}
- DB_PASSWORD=${NEXTCLOUD_DB_PASSWORD}
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.nextcloud.rule=Host(`nextcloud.${TRAEFIK_DOMAIN}`)" - "traefik.http.routers.nextcloud.rule=Host(`nextcloud.${TRAEFIK_DOMAIN}`)"
- "traefik.http.routers.nextcloud.entrypoints=secure" - "traefik.http.services.nextcloud-seedbox.loadbalancer.server.port=80"
- "traefik.http.routers.nextcloud.tls.certresolver=le"
portainer: portainer:
image: portainer/portainer image: portainer/portainer
@ -232,8 +273,6 @@ services:
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.portainer.rule=Host(`portainer.${TRAEFIK_DOMAIN}`)" - "traefik.http.routers.portainer.rule=Host(`portainer.${TRAEFIK_DOMAIN}`)"
- "traefik.http.routers.portainer.entrypoints=secure"
- "traefik.http.routers.portainer.tls.certresolver=le"
netdata: netdata:
image: netdata/netdata image: netdata/netdata
@ -253,8 +292,6 @@ services:
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.netdata.rule=Host(`netdata.${TRAEFIK_DOMAIN}`)" - "traefik.http.routers.netdata.rule=Host(`netdata.${TRAEFIK_DOMAIN}`)"
- "traefik.http.routers.netdata.entrypoints=secure"
- "traefik.http.routers.netdata.tls.certresolver=le"
- "traefik.http.routers.netdata.middlewares=common-auth@file" - "traefik.http.routers.netdata.middlewares=common-auth@file"
duplicati: duplicati:
@ -272,8 +309,6 @@ services:
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.duplicati.rule=Host(`duplicati.${TRAEFIK_DOMAIN}`)" - "traefik.http.routers.duplicati.rule=Host(`duplicati.${TRAEFIK_DOMAIN}`)"
- "traefik.http.routers.duplicati.entrypoints=secure"
- "traefik.http.routers.duplicati.tls.certresolver=le"
- "traefik.http.routers.duplicati.middlewares=common-auth@file" - "traefik.http.routers.duplicati.middlewares=common-auth@file"
networks: networks:
@ -326,14 +361,14 @@ volumes:
driver: local-persist driver: local-persist
driver_opts: driver_opts:
mountpoint: /data/config/jdownloader mountpoint: /data/config/jdownloader
nextclouddb:
driver: local-persist
driver_opts:
mountpoint: /data/nextcloud-db
confignextcloud: confignextcloud:
driver: local-persist driver: local-persist
driver_opts: driver_opts:
mountpoint: /data/config/nextcloud mountpoint: /data/config/nextcloud
nextclouddata:
driver: local-persist
driver_opts:
mountpoint: /data/config/nextcloud-data
torrents: torrents:
driver: local-persist driver: local-persist
driver_opts: driver_opts: