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}}}/nextcloud
docker-compose.yml
nano docker-compose.yml
services: 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 .env
PUID=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=password
Start container
docker compose up -d
Open web ui
http://localhost:8443 or http://{{{IP_ADDRESS_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 restart
Alternatively, 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,