How to Install Nextcloud-AIO
Nextcloud-AIO (All-In-One) is a comprehensive solution that simplifies the deployment of Nextcloud, providing a robust and scalable environment for managing your files, calendars, and contacts. This guide will walk you through setting up Nextcloud-AIO on your UGREEN NAS using either Docker Compose or SSH.
WARNING
This guide was last tested for Nextcloud-AIO v2023.12.0
Option 1: Deploy Container Using Docker Compose
To quickly deploy Nextcloud-AIO on UGREEN NAS, it is recommended to use Docker Compose for project management. This method is suitable when you need to create and manage multiple containers, making containerized management convenient.
1. Access the Docker Project Interface
In the UGOS Pro system of UGREEN NAS, open the "Docker" app, click "Project > Create" to start the project creation wizard.
2. Configure the Docker Compose File
In the wizard, you'll need to provide a Docker Compose configuration file. The Docker Compose file for Nextcloud-AIO can be found here.
TIP
The name of the folder always dictates the prefix that Docker specifies for all things automatically created, e.g., volumes, networks, service names (unless specified otherwise).
3. Deploy the Project
After confirming that the configuration file is correct, click "Deploy Now". The system will automatically pull the image and start the container. Once the deployment is complete, you can access the Nextcloud Webpage by visiting your-nas-name.local:11000 in your browser.
Option 2: Deploy Using SSH
If you prefer using SSH for more control over the setup process, follow these steps:
1. Connect to Your NAS via SSH
Open your terminal and connect to your UGREEN NAS using SSH:
ssh your-username@your-nas-ip2. Create a Directory for Nextcloud-AIO
Create a new directory for Nextcloud-AIO and navigate into it:
mkdir -p ~/nextcloud-aio
cd ~/nextcloud-aio3. Download the Docker Compose File
Download the Docker Compose file for Nextcloud-AIO:
wget https://raw.githubusercontent.com/UGREEN-NASync/community-guide/refs/heads/main/docs/ugos/install/nextcloud-aio/compose.yaml4. Deploy the Container
Run the following command to deploy the container:
sudo docker compose up -dAccess the Nextcloud Web Interface
After the deployment is complete, open the browser and enter the NAS IP address or name and port (e.g., 192.168.0.188:11000 or your-nas-name.local:11000) to access the interface. Follow the setup instructions carefully.
Configure Reverse Proxy
Next, navigate to your reverse proxy setup (i.e., NPM) and add a new proxy host. Enter nextcloud.YOURDOMAIN.com as your domain name, type in your server's local IP address in the IP address field, and enter port 11000 (this is the Apache port made available by Nextcloud-AIO).
In NPM, enable Block common exploits and Websocket support. Navigate to the SSL tab and enable all options, selecting your wildcard certificate that you created previously. Finally, navigate to the advanced tab and paste in the following:
client_body_buffer_size 512k;
proxy_read_timeout 86400s;
client_max_body_size 0;Configure Nextcloud
Once your Nextcloud instance is running, access the config.php by executing:
sudo docker run -it --rm --volume nextcloud_aio_nextcloud:/var/www/html:rw alpine sh -c "apk add --no-cache nano && nano /var/www/html/config/config.php"Change or add the following parameters in the config.php:
'default_phone_region' => 'DE', # your locale, i.e., 'EN' according to ISO 3166-1 A-2
'maintenance_window_start' => 5, # UTC Hour for maintenance windows
'default_locale' => 'de_DE', # your locale, i.e., 'en_US' according to ISO 639 language codes AND ISO-3166 country codes
'default_timezone' => 'Europe/Berlin', # your timezone, i.e., 'America/Chicago' or 'America/New_York'
'system_addressbook_exposed' => 'no', # OPTIONAL to disable system addressbookA list of all available parameters can be found in the Nextcloud docs.
Useful Commands for Nextcloud-AIO
To run occ commands, execute:
sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ YOUR_COMMAND