Nextcloud
Nextcloud offers a self-hosted file storage and sync platform with powerful collaboration capabilities with desktop, mobile and web interfaces.
References
Make directory
mkdir -p {{DOCKER_PATH_VAR}}/nextcloud && cd {{DOCKER_PATH_VAR}}/nextclouddocker-compose.yml
nano docker-compose.ymlservices: nextcloud: image: lscr.io/linuxserver/nextcloud:latest container_name: nextcloud ports: - 8443:443 depends_on: - nextcloud_db - nextcloud_redis networks: - nextcloud_network environment: PUID: ${PUID} PGID: ${PGID} TZ: ${TZ} POSTGRES_DB: ${POSTGRES_DB} POSTGRES_USER: ${POSTGRES_USER} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_HOST: ${POSTGRES_HOST} NEXTCLOUD_ADMIN_USER: ${NEXTCLOUD_ADMIN_USER} NEXTCLOUD_ADMIN_PASSWORD: ${NEXTCLOUD_ADMIN_PASSWORD} REDIS_HOST: ${REDIS_HOST} REDIS_PORT: 6379 REDIS_HOST_PASSWORD: ${REDIS_HOST_PASSWORD} volumes: - ./config:/config - ./data:/data restart: unless-stopped nextcloud_db: image: postgres:alpine container_name: nextcloud_db networks: - nextcloud_network environment: POSTGRES_DB: ${POSTGRES_DB} POSTGRES_USER: ${POSTGRES_USER} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} volumes: - nextcloud_pgdata:/var/lib/postgresql/data restart: unless-stopped nextcloud_redis: image: redis:alpine container_name: nextcloud_redis networks: - nextcloud_network volumes: - nextcloud_redis:/data restart: unless-stoppednetworks: nextcloud_network: name: nextcloud_network driver: bridgevolumes: nextcloud_pgdata: name: nextcloud_pgdata nextcloud_redis: name: nextcloud_redis.env
nano .envPUID=1000PGID=1000TZ=America/New_YorkPOSTGRES_DB=nextcloudPOSTGRES_USER=nextcloudPOSTGRES_PASSWORD=passwordPOSTGRES_HOST=nextcloud_dbNEXTCLOUD_ADMIN_USER=adminNEXTCLOUD_ADMIN_PASSWORD=passwordREDIS_HOST=nextcloud_redisREDIS_HOST_PASSWORD=passwordStart container
docker compose up -dOpen web ui
http://localhost:8443 or http://{{SERVER_IP_VAR}}:8443
After completing the web-based installer, restart the Nextcloud container to apply default memory caching and transactional file locking configurations.
Restart container
docker compose restartAlternatively, you can apply your own configurations by editing config.php.
Modify config.php
nano ./config/www/nextcloud/config/config.php'redis' => [ 'host' => 'nextcloud_redis', 'port' => 6379,],'memcache.local' => '\\OC\\Memcache\\APCu','filelocking.enabled' => true,'memcache.locking' => '\\OC\\Memcache\\APCu','upgrade.disable-web' => true,