Difference between revisions of "NextCloud: Heroku: Install"

From Gratiel's Wiki
(→‎Menu)
(→‎Menu)
Line 42: Line 42:
 
# [[NextCloud: Heroku: Install: Apply S3 Patch to NextCloud | Apply S3 Patch to NextCloud ]]
 
# [[NextCloud: Heroku: Install: Apply S3 Patch to NextCloud | Apply S3 Patch to NextCloud ]]
 
# [[NextCloud: Heroku: Install: Reset the Database | Reset the Database ]]
 
# [[NextCloud: Heroku: Install: Reset the Database | Reset the Database ]]
−
# [[NextCloud: Heroku: Install: Redo Database & Admin Account Setup | Redo Database & Admin Account Setup ]]
+
# [[NextCloud: Heroku: Install: Push Up the Code, Simplified | Push Up the Code, Simplified ]]
 +
# [[NextCloud: Heroku: Install: Setup Database & Admin Account with S3 File Storage | Setup Database & Admin Account with S3 File Storage ]]
 
# [[NextCloud: Heroku: Install: Verify S3 Bucket Setup | Verify S3 Bucket Setup ]]
 
# [[NextCloud: Heroku: Install: Verify S3 Bucket Setup | Verify S3 Bucket Setup ]]
 
# [[NextCloud: Heroku: Install: Update Nextcloud Keys | Update Nextcloud Keys ]]
 
# [[NextCloud: Heroku: Install: Update Nextcloud Keys | Update Nextcloud Keys ]]

Revision as of 00:35, 17 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. Setup Database & Admin Account
  10. Update Config File with Database Credentials
  11. Create Heroku Environment Variables
  12. Setup S3 Access Key
  13. Setup S3 Database Bucket(s)
    1. Log Bucket(s)
    2. Replication Bucket
    3. Main Bucket
  14. Update Config File for S3 File Storage
  15. Add S3 Environment Variables
  16. Apply S3 Patch to NextCloud
  17. Reset the Database
  18. Push Up the Code, Simplified
  19. Setup Database & Admin Account with S3 File Storage
  20. Verify S3 Bucket Setup
  21. Update Nextcloud Keys
  22. Finalize Installation
  23. Install NextCloud Apps
  24. Setup NextCloud Security
  25. S3 Storage
  26. Patching NextCloud
  27. WebDAV

Return