Difference between revisions of "NextCloud: Heroku: Install"

From Gratiel's Wiki
(Adding Heroku's Credentials)
Line 25: Line 25:
 
# [[NextCloud: Heroku: Install: Push Up the Code | Push Up the Code ]]
 
# [[NextCloud: Heroku: Install: Push Up the Code | Push Up the Code ]]
 
# [[NextCloud: Heroku: Install: Capture Initial Config | Capture Initial Config ]]
 
# [[NextCloud: Heroku: Install: Capture Initial Config | Capture Initial Config ]]
 +
# [[NextCloud: Heroku: Install: Gather Heroku's Credentials | Gather Heroku's Credentials ]]
 
# [[NextCloud: Heroku: Install: First Installation | First Installation ]]
 
# [[NextCloud: Heroku: Install: First Installation | First Installation ]]
 
# [[NextCloud: Heroku: Install: S3 Bucket | S3 Bucket ]]
 
# [[NextCloud: Heroku: Install: S3 Bucket | S3 Bucket ]]

Revision as of 12:17, 2 September 2019

Preface

Heroku is not like other IaaS cloud services such as Amazon Web Services (AWS), Rackspace, Digital Ocean, or Linode. Instead, Heroku is a PaaS and with this comes some unique challenges to installing nextcloud.

Ephemeral Drives

Heroku uses Ephemeral Drives. Ephemeral drives are virtual storage that are created for the sole purpose of booting a virtual machine and should be thought of as temporary. Ephemeral disks are useful if you aren't worried about needing to duplicate an instance or destroy an instance and save the data.

Locked Code

Your code will always be locked and based on the git repository. During the installation process, nextcloud writes ans saves changes to your config file. If this information is not saved and stored into your git repo, then it will be lost on the next spin-up.

No file storage

Heroku only give you a limited amount of space for your app only. Any files that are uploaded to nextcloud are typically saved in the app folder. Since a new spin-up will erase all uploaded files, saving them to Heroku is NOT an option.
Instead, we will need to utilize Amazon's S3 storage to store our files and information.

Databases

PostgreSQL

We will be utilizing PostgreSQL instead of MySQL. This can provide unique options in Heroku Shield that are not available in regular Heroku or MySQL.

Security

Since locked code will be dependent on the git repo, we will need to store our config information within Heroku's Config Vars section.

Menu

The following instructions are for users of Ubuntu/Debian based Linux.
  1. Prerequisites
  2. Setup Heroku
  3. Downloading NextCloud
  4. Prepping NextCloud for Heroku
  5. Heroku Add-Ons
  6. Push Up the Code
  7. Capture Initial Config
  8. Gather Heroku's Credentials
  9. First Installation
  10. S3 Bucket
  11. Finalize Installation
  12. Install NextCloud Apps
  13. Setup NextCloud Security
  14. S3 Storage
  15. Patching NextCloud
  16. WebDAV

Return