Service - storage - Nextcloud
Service - storage - Nextcloud
Section titled “Service - storage - Nextcloud”Return to Server Guides
Nextcloud AIO is inspired by projects like Portainer that directly manage the Docker daemon by interacting with it through the Docker socket. This concept allows users to install only one container with a single command, which then manages all necessary containers to provide a fully functional Nextcloud installation with most features included. This approach simplifies updates, as the environment is no longer bound to the host system and its slower update cycles. Everything operates within containers, providing a consistent and efficient experience. Additionally, a simple interface is provided for managing your Nextcloud AIO installation, making it user-friendly.
For usage, see Nextcloud Usage
Server Setup
Section titled “Server Setup”Create an Instance
Section titled “Create an Instance”- See Instance Setup for instructions.
Allow Additional Inbound Ports
Section titled “Allow Additional Inbound Ports”- Open ports: 3478, 8080
SSH into the Server
Section titled “SSH into the Server”Follow your preferred method to establish an SSH connection.
Mount Storage Persistently
Section titled “Mount Storage Persistently”- Refer to Server Storage for guidance.
Set Up a Server for Docker
Section titled “Set Up a Server for Docker”- Follow Server Initial Setup for Docker for instructions.
Set Up Git Repository for Nextcloud AIO
Section titled “Set Up Git Repository for Nextcloud AIO”cd $HOMEgit clone https://github.com/nextcloud/all-in-one.gitcd $HOME/all-in-one # This is the Nextcloud AIO repo directorymv compose.yaml compose.yaml.bktouch compose.yamlCreate the compose.yaml File
Section titled “Create the compose.yaml File”version: "3.8"volumes: nextcloud_aio_mastercontainer: name: nextcloud_aio_mastercontainer
services: nextcloud: image: nextcloud/all-in-one:latest restart: always container_name: nextcloud-aio-mastercontainer volumes: - nextcloud_aio_mastercontainer:/mnt/docker-aio-config - /var/run/docker.sock:/var/run/docker.sock:ro ports: - 8080:8080 networks: - nextcloud_network environment: - APACHE_PORT=11000 - APACHE_IP_BINDING=127.0.0.1 - NEXTCLOUD_DATADIR="/home/user/ncdata" - NEXTCLOUD_UPLOAD_LIMIT=50G - NEXTCLOUD_MEMORY_LIMIT=512M - TALK_PORT=3478 - SKIP_DOMAIN_VALIDATION=trueStart the Compose Service
Section titled “Start the Compose Service”cd $HOME/all-in-one # This is the Nextcloud AIO repo directorysudo docker-compose up -dWeb Setup
Section titled “Web Setup”Wait approximately 3–7 minutes, then navigate to the server’s IP address on port 8080 in your browser. Follow these steps:
- Log in with the provided password (available on the “Open Nextcloud AIO Login” page).
- Define your domain.
- Install the latest Nextcloud version.
- Install additional add-ons as needed.
Setup Cloudflared
Section titled “Setup Cloudflared”- See Proxy - Cloudflared for instructions.
- On Cloudflare, set up a tunnel using
http://localhost:11000with your chosen domain or subdomain. - Visit the Cloudflare-configured domain (e.g.,
https://nextcloud.example.com).
Your username and password will be displayed at the top of the Mastercontainer page.
Ports Explained
Section titled “Ports Explained”Inbound Rules
Section titled “Inbound Rules”The following ports must be open for incoming connections:
| Port | Purpose |
|---|---|
| 8080/TCP | Used to access the Mastercontainer interface internally |
| 80/TCP | Used for HTTP redirection to Nextcloud and ACME HTTP-challenge for certificate retrieval |
| 8443/TCP | Used for secure access to the Mastercontainer interface with a valid certificate |
| 443/TCP | Used by the Apache container for secure HTTPS traffic |
| 443/UDP | Used by the Apache container for HTTP/3 traffic, if enabled |
| 3478/TCP and 3478/UDP | Used by the Talk container’s TURN server |