NextCloud Setup – Azure

In this walk-through we will demonstrate the basic steps used to install NextCloud on Azure.

This walk-through will include:

1) Create the Virtual Machine running Ubuntu

2) Install snap & NextCloud via snap on the Virtual Machine.

3) Configure Static IP with DNS / FQDN.

4) Configure Firewall rules.

5) Configure HTTPS with lets Encrypt

6) Test the the NextCloud instance is accessible.

Commands used:

  1. sudo apt-get update
  2. sudo apt-get install snap
  3. sudo snap install nextcloud
  4. sudo nextcloud.enable-https lets-encrypt

Keep in mind this is only a basic install and will need to be secured using best security practices etc. If enough demand, we might do a future walk through on how to secure your public facing systems. 

NextCloud Setup – Raspberry Pi !

In this walk-through we will take you through the steps on how to install NextCloud on your Raspberry Pi.

This walk-through will include:

1) How-to format and mount an external usb disk for data storage.

2) How-to install and setup MariaDB for the SQL backend.

3) How-to instal the NextCloud Software.

Steps – Pdf NextCloud Setup – Raspberry Pi  or follow below.

NextCloud Setup – Raspberry Pi !


Url’s used: Rasbian

https://www.raspberrypi.org/downloads/raspbian/


Components:

  • Raspberry Pi 3
  • 32 GB SD Card
  • USB Keyboard
  • Monitor with HDMI
  • 2TB External HDD (usb)

Steps:

Setup your raspberry Pi

  1. Download the arm image from https://www.raspberrypi.org/downloads/raspbian/
  2. Extract the image from the file you have downloaded.
  3. Flash your SD Card with the image you extracted using Etcher. (Or your preferred tool)
  4. Remove the SD Card from your computer and insert it into the Raspberry Pi.
  5. Connect all the components to the Raspberry Pi and power it on
  6. Complete the usual installation / configuration steps. (https://www.raspberrypi.org/documentation/installation/installing-images/README.md)
  7. Set a static IP. We will use 192.168.1.253 for our lab demosud.
  8. ssh to your raspberry pi and follow the below sections.

Preparing the External HDD (usb)

  1. Before you plug in the usb disk, Tail the messages file with the command below:

~$ tail -f /var/log/messages | grep disk

Our output:

We now know that the disk is on ## /dev/sda

  1. Let us now create a partition.

~$ sudo fdisk /dev/sda

Our inputs used in order (m | d | F | n | y | w)

Visual below:

  1. Create the filesystem.

~$ sudo mkfs -t ext4 /dev/sda1

  1. Create a directory to test the mount.

~$ sudo mkdir /mnt/NCSTORE

  1. Verify the disk is able to mount

~$ sudo mount /dev/sda1 /mnt/NCSTORE

  1. list the currently mounted disks.

~$ df -lh

You should see the volume mounted:


Hendgrow Lab df

  1. If all working as expected, edit the /etc/fstab to make the mount permanent. As per our example we added the following line:

HendGrow Lab fstab pic

Update the installation.

~$ sudo apt-get update

~$ sudo apt-get upgrade


MariaDB Install & DB / User creation.

  1. Install MariaDB and secure it.

~$ sudo apt install mariadb-server

~$ sudo mysql_secure_installation

Our inputs used in order (y | y | y | y | y)

Don’t forget the password you set during this step!

Create the NextCloud Database & DB user

  1. Login to the SQL server and provide the password you set in the previous step.

~$ sudo mysql -u root -p

  1. Create the Database to be used by NexCloud

CREATE DATABASE ncdb;

  1. Create the user we will use to access the DB we just created

CREATE USER ‘ncdbuser’@’localhost’ IDENTIFIED BY ‘yourpasswordhere’;

  1. Grant the user permissions to use the DB we created

GRANT ALL PRIVILEGES ON ncdb.* TO ‘ncdbuser’@’localhost’;

  1. Finalize the setting with

FLUSH PRIVILEGES;


Install NextCloud

  1. Install Apache, PHP & PHP SQL Connector.

~$ sudo apt-get install apache2 php-mysql php7.3 php7.3-gd php7.3-curl php7.3-zip php7.3-xml php7.3-mbstring

  1. Now restart Apache

~$ sudo service apache2 restart

  1. Fetch NextCloud and extract it.

At the time of this walk through version nextcloud-17.0.2. is the most current.

To view what is available see: https://download.nextcloud.com/server/releases/

~$ cd /var/www/html

~$ curl https://download.nextcloud.com/server/releases/nextcloud-17.0.2.tar.bz2 | sudo tar -jxv

  1. We need to set the correct permissions

~$ sudo chown -R www-data:www-data /var/www/html/nextcloud/

~$ sudo chown -R www-data:www-data /mnt/NCSTORE

~$ sudo chmod 750 /mnt/NCSTORE

  1. Open your browser and navigate to your Raspberry pi ip/nextcloud

http://192.168.1.253/nextcloud

  1. Enter the details requested.