This commit is contained in:
myve 2024-08-10 09:07:11 +00:00
commit e650d80b1e
58 changed files with 1747 additions and 0 deletions

18
nextcloud/.env Normal file
View file

@ -0,0 +1,18 @@
# Environment file for docker-compose.yaml
# Generate new passwords with:
# openssl rand -hex 32
# Fill in registry
REGISTRY=
# Nextcloud
NEXTCLOUD_PORT=
NEXTCLOUD_DBNAME=
NEXTCLOUD_DBUSER=
NEXTCLOUD_DBPASS=
# Onlyoffice Document Server
ONLYOFFICE_DS_JWTSECRET=
ONLYOFFICE_DS_JWTHEADER=
ONLYOFFICE_DS_DBNAME=
ONLYOFFICE_DS_DBUSER=

View file

@ -0,0 +1,126 @@
services:
# nextcloud (https://github.com/nextcloud/docker)
nextcloud-nginx:
image: ${REGISTRY}/nginx
container_name: nextcloud-nginx
restart: unless-stopped
ports:
- ${NEXTCLOUD_PORT:-80}:80
volumes:
- ./nginx.conf:/etc/nginx/nginx.conf
- ./app:/var/www/html
depends_on:
- nextcloud
- onlyoffice-document-server
networks:
- nextcloud
nextcloud:
image: ${REGISTRY}/nextcloud
container_name: nextcloud
restart: unless-stopped
environment:
# Redis
REDIS_HOST: nextcloud-redis
# PostgreSQL
POSTGRES_HOST: nextcloud-postgresql
POSTGRES_DB: ${NEXTCLOUD_DBNAME:-nextcloud}
POSTGRES_USER: ${NEXTCLOUD_DBUSER:-nextcloud}
POSTGRES_PASSWORD: ${NEXTCLOUD_DBPASS:-nextcloud}
# PHP
PHP_MEMORY_LIMIT: 16G
PHP_UPLOAD_LIMIT: 0
volumes:
- ./app:/var/www/html
- ./data:/var/www/html/data
- ./php-fpm.conf:/usr/local/etc/php-fpm.d/zz-zpmchildren.conf
depends_on:
- nextcloud-postgresql
- nextcloud-redis
networks:
- nextcloud
nextcloud-postgresql:
image: ${REGISTRY}/postgres
container_name: nextcloud-postgresql
restart: unless-stopped
environment:
POSTGRES_DB: ${NEXTCLOUD_DBNAME:-nextcloud}
POSTGRES_USER: ${NEXTCLOUD_DBUSER:-nextcloud}
POSTGRES_PASSWORD: ${NEXTCLOUD_DBPASS:-nextcloud}
volumes:
- ./sql:/var/lib/postgresql/data:rw
networks:
- nextcloud
nextcloud-redis:
image: ${REGISTRY}/valkey
container_name: nextcloud-redis
restart: unless-stopped
volumes:
- ./redis:/data
networks:
- nextcloud
# Onlyoffice Document Server
onlyoffice-document-server:
image: ${REGISTRY}/onlyoffice/documentserver
container_name: onlyoffice-document-server
restart: unless-stopped
stdin_open: true
environment:
# JWT
JWT_ENABLED: true
JWT_SECRET: ${ONLYOFFICE_DS_JWTSECRET:-onlyoffice}
JWT_HEADER: ${ONLYOFFICE_DS_JWTHEADER:-onlyoffice}
# PostgreSQL
DB_TYPE: postgres
DB_HOST: onlyoffice-postgresql
DB_PORT: 5432
DB_NAME: ${ONLYOFFICE_DS_DBNAME:-onlyoffice}
DB_USER: ${ONLYOFFICE_DS_DBUSER:-onlyoffice}
# Rabbitmq
AMQP_URI: amqp://guest:guest@onlyoffice-rabbitmq
# Redis
REDIS_SERVER_HOST: onlyoffice-redis
REDIS_SERVER_PORT: 6379
volumes:
- ./onlyoffice/document/data:/var/www/onlyoffice/Data
- ./onlyoffice/document/log:/var/log/onlyoffice
- ./onlyoffice/document/fonts:/usr/share/fonts/truetype/custom
- ./onlyoffice/document/forgotten:/var/lib/onlyoffice/documentserver/App_Data/cache/files/forgotten
- ./onlyoffice/document/cache:/var/lib/onlyoffice
depends_on:
- onlyoffice-postgresql
- onlyoffice-rabbitmq
- onlyoffice-redis
networks:
- nextcloud
onlyoffice-postgresql:
image: ${REGISTRY}/postgres
container_name: onlyoffice-postgresql
restart: unless-stopped
environment:
POSTGRES_DB: ${ONLYOFFICE_DS_DBNAME:-onlyoffice}
POSTGRES_USER: ${ONLYOFFICE_DS_DBUSER:-onlyoffice}
POSTGRES_HOST_AUTH_METHOD: trust
volumes:
- ./onlyoffice/postgresql:/var/lib/postgresql:rw
networks:
- nextcloud
onlyoffice-redis:
image: ${REGISTRY}/valkey
container_name: onlyoffice-redis
restart: unless-stopped
volumes:
- ./onlyoffice/redis:/data
networks:
- nextcloud
onlyoffice-rabbitmq:
image: ${REGISTRY}/rabbitmq
container_name: onlyoffice-rabbitmq
restart: unless-stopped
networks:
- nextcloud
networks:
nextcloud:
external: false