Compare commits

...

2 Commits

Author SHA1 Message Date
valentin
2699014d9e nextcloud 2023-03-22 17:42:27 +01:00
valentin
b0630c5118 nextcloud 2023-03-22 17:41:53 +01:00
2 changed files with 213 additions and 0 deletions

View File

@@ -0,0 +1,81 @@
x-volumes-default: &volumes
volumes:
- nextcloud:/var/www/html
- nextcloud_data:/var/www/html/data
- nextcloud_config:/var/www/html/config
- nextcloud_custom_apps:/var/www/html/custom_apps
version: '3'
services:
redis:
image: redis:alpine
restart: always
app:
image: nextcloud:${NEXTCLOUD_VERSION}
restart: always
<<: *volumes
environment:
- MYSQL_DATABASE=${MYSQL_DATABASE}
- MYSQL_USER=${MYSQL_USER}
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
- MYSQL_HOST=db
- NEXTCLOUD_ADMIN_PASSWORD=${NEXTCLOUD_ADMIN_PASSWORD}
- NEXTCLOUD_ADMIN_USER=${NEXTCLOUD_ADMIN_USER}
- NEXTCLOUD_TRUSTED_DOMAINS=${APP_HOST}
- TRUSTED_PROXIES=${TRUSTED_PROXIES}
- OVERWRITECLIURL=https://${APP_HOST}
- OVERWRITEHOST=${APP_HOST}
- OVERWRITEPROTOCOL=https
- NEXTCLOUD_UPDATE=1
- REDIS_HOST=redis
- REDIS_HOST_PORT=6379
- SMTP_HOST
- MAIL_FROM_ADDRESS
- MAIL_DOMAIN
- SMTP_PORT
- SMTP_SECURE
- SMTP_NAME
- SMTP_LOGIN
- SMTP_PASSWORD
- SMTP_AUTHTYPE
depends_on:
- redis
labels:
- traefik.enable=true
- traefik.docker.network=traefik_web
- traefik.http.routers.${ROUTER_NAME}-router.entrypoints=${ENTRYPOINT}
- traefik.http.routers.${ROUTER_NAME}-router.rule=Host(`${APP_HOST}`)
- traefik.http.routers.${ROUTER_NAME}-router.tls=true
networks:
- default
- traefik_web
db:
image: mariadb:${MARIADB_VERSION}
restart: always
command: --transaction-isolation=READ-COMMITTED --log-bin=binlog --binlog-format=ROW
volumes:
- nextcloud_db:/var/lib/mysql
networks:
- default
environment:
- MYSQL_ROOT_PASSWORD
- MYSQL_PASSWORD
- MYSQL_DATABASE
- MYSQL_USER
cron:
image: nextcloud:${NEXTCLOUD_VERSION:-latest}
restart: always
<<: *volumes
entrypoint: /cron.sh
depends_on:
- redis
volumes:
nextcloud_db:
nextcloud:
nextcloud_data:
nextcloud_config:
nextcloud_custom_apps:

View File

@@ -200,6 +200,138 @@
"default": "piwigo.traefik.me" "default": "piwigo.traefik.me"
} }
] ]
},
{
"type": 3,
"title": "Nextcloud",
"description": "Installation de Nextclcoud en mode docker compose",
"categories": ["MediaManagement"],
"platform": "linux",
"logo": "https://upload.wikimedia.org/wikipedia/fr/thumb/2/2e/Piwigo-logo-black-letters.svg/800px-Piwigo-logo-black-letters.svg.png",
"repository": {
"url": "https://git.baraise.fr/Aguay/portainer",
"stackfile": "nextcloud/docker-compose.yml"
},
"env": [
{
"name": "ENTRYPOINT",
"label": "Entrypoint pour le http et le https",
"description": "entrypoint traefik",
"select": [
{
"text": "Voulez vous du https uniquement?",
"value": "websecure"
},
{
"text": "Que du htttp?",
"value": "web"
},
{
"text": "Https et Httpw",
"value": "web,websecure",
"default": true
}
],
},
{
"name": "NEXTCLOUD_VERSION",
"label": "Nextcloud version",
"description": "Version de nextcloud (latest si vide, list https://hub.docker.com/_/nextcloud/tags)",
"default": "latest"
},
{
"name": "NEXTCLOUD_ADMIN_USER",
"label": "Username admin",
"description": "Nom d'utilisateur pour la configuration nextcloud"
},
{
"name": "NEXTCLOUD_ADMIN_PASSWORD",
"label": "Mot de passe admin",
"description": "Mot de passe de l'admin nextcloud"
},
{
"name": "MYSQL_DATABASE",
"label": "Mysql Database",
"description": "Version of Dokku to use ('latest' if empty)",
"default": "piwigo_db"
},
{
"name": "MYSQL_ROOT_PASSWORD",
"label": "Mysql Root passsword",
"description": "Global hostname to be registered by Dokku",
"default": "R0o7P@sw0rD"
},
{
"name": "MYSQL_USER",
"label": "Mysql user",
"description": "Host path to be bound to /mnt/dokku (`/var/lib/dokku` if empty)",
"default": "piwigo_user"
},
{
"name": "MYSQL_PASSWORD",
"label": "Mysql password",
"description": "Image build cache path. Generally set to <data dir> + '/home/dokku'",
"default": "P1w1g0PassDB"
},
{
"name": "ROUTER_NAME",
"label": "router host",
"description": "Nom du routeur",
"default": "piwigo"
},
{
"name": "APP_HOST",
"label": "Url app host",
"description": "Nom de domaine pour l'accès à l'application",
"default": "piwigo.traefik.me"
},
{
"name": "SMTP_HOST",
"label": "Host smtp",
"description": "Host smtp pour l'envoi des mails dans nextcloud, si vide alors configurable dans l'administration"
},
{
"name": "SMTP_PORT",
"label": "Port smtp",
"description": " 25, 465, 587 ou 2525"
},
{
"name": "SMTP_NAME",
"label": "Nom pour la connexion smtp",
"description": "Exemple: support@domain.fr"
},
{
"name": "SMTP_AUTHTYPE",
"label": "Type d'authentification smtp",
"description": "LOGIN ou PLAIN"
},
{
"name": "SMTP_PASSWORD",
"label": "Mot de passe de connexion"
},
{
"name": "SMTP_LOGN",
"label": "Login de connexion smtp",
"description": "Exemple: support@domain.fr"
},
{
"name": "SMTP_SECURE",
"label": "Sécurité smtp",
"description": "ssl, tls ou none"
}, {
"name": "MAIL_DOMAIN",
"label": "Domain mail",
"description": "Exemple: pour support@domain.fr mettre \"domain.fr\"."
},
{
"name": "MAIL_FROM_ADDRESS",
"label": "From pour l'envelope SMTP ",
"description": "Exemple: pour support@domain.fr mettre \"support\"."
}
]
} }
] ]
} }