aboutsummaryrefslogtreecommitdiff
path: root/blog/2022-03-23-nextcloud-on-ubuntu.org
diff options
context:
space:
mode:
authorChristian Cleberg <hello@cleberg.net>2024-01-08 20:11:17 -0600
committerChristian Cleberg <hello@cleberg.net>2024-01-08 20:11:17 -0600
commit25945b8fead989cca09a23983623b63ce36dcc0c (patch)
tree0dfc869ce8b028e04ce9da196af08779780915ce /blog/2022-03-23-nextcloud-on-ubuntu.org
parent22b526be60bf4257c2a1d58a5fad59cf6b044375 (diff)
downloadcleberg.net-25945b8fead989cca09a23983623b63ce36dcc0c.tar.gz
cleberg.net-25945b8fead989cca09a23983623b63ce36dcc0c.tar.bz2
cleberg.net-25945b8fead989cca09a23983623b63ce36dcc0c.zip
feat: total re-write from Emacs org-mode to Zola markdown
Diffstat (limited to 'blog/2022-03-23-nextcloud-on-ubuntu.org')
-rw-r--r--blog/2022-03-23-nextcloud-on-ubuntu.org181
1 files changed, 0 insertions, 181 deletions
diff --git a/blog/2022-03-23-nextcloud-on-ubuntu.org b/blog/2022-03-23-nextcloud-on-ubuntu.org
deleted file mode 100644
index c28da25..0000000
--- a/blog/2022-03-23-nextcloud-on-ubuntu.org
+++ /dev/null
@@ -1,181 +0,0 @@
-#+title: Installing Nextcloud on Ubuntu
-#+date: 2022-03-23
-
-** What is Nextcloud?
-:PROPERTIES:
-:CUSTOM_ID: what-is-nextcloud
-:END:
-[[https://nextcloud.com/][Nextcloud]] is a self-hosted solution for
-storage, communications, editing, calendar, contacts, and more.
-
-This tutorial assumes that you have an Ubuntu server and a domain name
-configured to point toward the server.
-
-** Install Dependencies
-:PROPERTIES:
-:CUSTOM_ID: install-dependencies
-:END:
-To start, you will need to install the packages that Nextcloud requires:
-
-#+begin_src sh
-sudo apt install apache2 mariadb-server libapache2-mod-php7.4
-sudo apt install php7.4-gd php7.4-mysql php7.4-curl php7.4-mbstring php7.4-intl
-sudo apt install php7.4-gmp php7.4-bcmath php-imagick php7.4-xml php7.4-zip
-#+end_src
-
-** Set Up MySQL
-:PROPERTIES:
-:CUSTOM_ID: set-up-mysql
-:END:
-Next, you will need to log in to MySQL as the =root= user of the
-machine.
-
-#+begin_src sh
-sudo mysql -uroot -p
-#+end_src
-
-Once you've logged in, you must create a new user so that Nextcloud can
-manage the database. You will also create a =nextcloud= database and
-assign privileges:
-
-#+begin_src sql
-CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
-CREATE DATABASE IF NOT EXISTS nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
-GRANT ALL PRIVILEGES ON nextcloud.* TO 'username'@'localhost';
-FLUSH PRIVILEGES;
-quit;
-#+end_src
-
-** Download & Install Nextcloud
-:PROPERTIES:
-:CUSTOM_ID: download-install-nextcloud
-:END:
-To download Nextcloud, go the
-[[https://nextcloud.com/install/#instructions-server][Nextcloud
-downloads page]], click on =Archive File= and right-click the big blue
-button to copy the link.
-
-Then, go to your server and enter the following commands to download,
-unzip, and move the files to your destination directory. This example
-uses =example.com= as the destination, but you can put it wherever you
-want to server your files from.
-
-#+begin_src sh
-wget https://download.nextcloud.com/server/releases/nextcloud-23.0.3.zip
-sudo apt install unzip
-unzip nextcloud-23.0.3.zip
-sudo cp -r nextcloud /var/www/example.com
-#+end_src
-
-** Configure the Apache Web Server
-:PROPERTIES:
-:CUSTOM_ID: configure-the-apache-web-server
-:END:
-Now that the database is set up and Nextcloud is installed, you need to
-set up the Apache configuration files to tell the server how to handle
-requests for =example.com/nextcloud=.
-
-First, open the following file in the editor:
-
-#+begin_src sh
-sudo nano /etc/apache2/sites-available/nextcloud.conf
-#+end_src
-
-Once the editor is open, paste the following information in. Then, save
-and close the file.
-
-#+begin_src config
-<VirtualHost *:80>
- DocumentRoot /var/www/example.com
- ServerName example.com
- ServerAlias www.example.com
- ErrorLog ${APACHE_LOG_DIR}/error.log
- CustomLog ${APACHE_LOG_DIR}/access.log combined
-
- <Directory /var/www/example.com/nextcloud/>
- Require all granted
- AllowOverride All
- Options FollowSymLinks MultiViews
- Satisfy Any
-
- <IfModule mod_dav.c>
- Dav off
- </IfModule>
- </Directory>
-</VirtualHost>
-#+end_src
-
-Once the file is saved, enable it with Apache:
-
-#+begin_src sh
-sudo a2ensite nextcloud.conf
-#+end_src
-
-Next, enable the Apache mods required by Nextcloud:
-
-#+begin_src sh
-sudo a2enmod rewrite headers env dir mime
-#+end_src
-
-Finally, restart Apache. If any errors arise, you must solve those
-before continuing.
-
-#+begin_src sh
-sudo systemctl restart apache2
-#+end_src
-
-For the app to work, you must have the correct file permissions on your
-=nextcloud= directory. Set the owner to be =www-data=:
-
-#+begin_src sh
-sudo chown -R www-data:www-data /var/www/example.com/nextcloud/
-#+end_src
-
-** DNS
-:PROPERTIES:
-:CUSTOM_ID: dns
-:END:
-If you do not have a static IP address, you will need to update your DNS
-settings (at your DNS provider) whenever your dynamic IP address
-changes.
-
-For an example on how I do that with Cloudflare, see my other post:
-[[/blog/updating-dynamic-dns-with-cloudflare-api/][Updating Dynamic DNS
-with Cloudflare API]]
-
-** Certbot
-:PROPERTIES:
-:CUSTOM_ID: certbot
-:END:
-If you want to serve Nextcloud from HTTPS rather than plain HTTP, use
-the following commands to issue Let's Encrypt SSL certificates:
-
-#+begin_src sh
-sudo apt install snapd
-sudo snap install core
-sudo snap refresh core
-sudo snap install --classic certbot
-sudo ln -s /snap/bin/certbot /usr/bin/certbot
-sudo certbot --apache
-#+end_src
-
-** Results
-:PROPERTIES:
-:CUSTOM_ID: results
-:END:
-VoilĂ ! You're all done and should be able to access Nextcloud from your
-domain or IP address.
-
-See the screenshots below for the dashboard and a settings page on my
-instance of Nextcloud, using the =Breeze Dark= theme I installed from
-the Apps page.
-
-#+caption: Nextcloud Dashboard
-[[https://img.cleberg.net/blog/20220323-installing-nextcloud-on-ubuntu/nextcloud_dashboard.png]]
-
-/Figure 01: Nextcloud Dashboard/
-
-#+caption: Nextcloud Settings
-[[https://img.cleberg.net/blog/20220323-installing-nextcloud-on-ubuntu/nextcloud_settings.png]]
-
-/Figure 02: Nextcloud Security Settings/