Article

One-Click Nextcloud

Last Updated: Mon, Jun 22, 2020
One-Click Apps Server Apps

Introduction

Vultr's One-Click Nextcloud application is a quick way to launch your online file sharing platform. Select a server location, choose your size, and click Deploy Now. Your server will be ready to configure in about a minute. To follow this installation guide, locate two sets of user credentials on the Server Information screen. The root login (1) is used for console and SSH access. The Nextcloud user (2) is for web access.

App Info

Install SSL Certificate

This step is optional, but recommended. For better security and convenience, register a domain name and install an SSL certificate. If you plan to use a commercial SSL certificate, see the Commercial SSL section.

If you skip this step:

  • Substitute the server IP address for oneclick.example.com.
  • You will encounter a certificate security warning.
  • Proceed past the warning to complete setup.

To install a free Let's Encrypt SSL certificate:

  1. Register a domain name and create a DNS record for the server's IP address. Consult your DNS provider for instructions, or see our guide if using Vultr's DNS. This guide uses oneclick.example.com for illustration. Substitute your server's domain name when following this installation guide.
  2. Verify that DNS has finished propagation and the name is visible throughout the internet before proceeding. Propagation usually happens quickly, but could take up to 48 hours in some cases.
  3. Connect to your server console or via SSH. Use the root login (1) from the Server Information screen.
  4. Install the SSL certificate with certbot. Replace the domain name and email with your values.

    # certbot --nginx --redirect --agree-tos --no-eff-email -d oneclick.example.com -m admin@example.com 
    

    Certbot should report success when finished.

  5. Nextcloud requires that you add the server domain name to the trusted_domains array.

    Edit /var/www/html/config/config.php.

    # nano /var/www/html/config/config.php
    

    Update the trusted_domains array. Replace 192.0.2.123 and oneclick.example.com with your values.

    'trusted_domains' =>
    array (
        0 => 'localhost',
        1 => '192.0.2.123',
        2 => 'oneclick.example.com',
    ),
    

    See the Nextcloud documentation for a detailed example.

  6. Log into your server with the Nextcloud user (2) account: https://oneclick.example.com

Commercial SSL

You can use a Commercial SSL Certificate instead of the free Let's Encrypt certificate.

How to install a commercial SSL certificate

  1. Obtain a certificate from a certificate authority for your domain.
  2. Replace the server.crt and server.key files in /etc/nginx/ssl/ with the commercial certificate. Refer to your certificate vendor's documentation for details.
  3. Reboot the server.

    # reboot
    

Certbot considerations

Certbot makes changes to the Nginx configuration. If you used certbot to obtain a Let's Encrypt certificate, return the Nginx configuration files to default before proceeding.

  1. Back up your existing Nginx configuration files

    # cp -r /etc/nginx/ /root/nginx
    
  2. Revoke your certbot certificate.

    # certbot delete
    
  3. Restore the default Nginx configuration.

    # /opt/vultr/fix-vhost.sh
    

Access Without SSL

If you choose not to install an SSL certificate, log into your server with the Nextcloud user (2) account at the server's IP address. You will need to proceed past the SSL certificate warning. For example: https://192.0.2.123/

Backup Script

The Vultr team has provided a backup script for convenience.

  1. Connect to your server console or via SSH. Use the root login (1) from the Server Information screen.
  2. Run the script:

    # cd /root/
    # sh backup-nextcloud.sh
    

The script makes a backup of the Nextcloud database, source code, and uploaded files in the /root folder. Ensure that you have enough available space to duplicate all of your data.

Reset Nginx Configuration

If you have trouble with the Nginx web server, we have included a script to reset the Nginx config files back to default.

  1. Connect to your server console or via SSH. Use the root login (1) from the Server Information screen.
  2. Run the script:

    # /opt/vultr/fix-vhost.sh
    

SQL Database

Nextcloud uses a MySQL database server. You can connect to the database by executing the following:

mysql -u root

The MySQL root password is saved in /root/.my.cnf.

About One-Click Apps

One-Click apps are updated regularly without notice. When launching a One-Click app, you'll receive our latest version. We do not update deployed instances, and you are responsible for keeping the instance up-do-date. If you design an infrastructure based on One-Click apps and need to ensure the same app version in the future, take a snapshot of the initial deployment and create new instances from the snapshot.

Want to contribute?

You could earn up to $300 by adding new articles