Self host & Install Canvas LMS on your own server

Jump to solution
Community Explorer

Following the production guide created by Instructure for Canvas LMS Installation gave me a pretty tough time as there were so many steps and instructions missing from this guide.

I have created a detailed step-by-step guide incorporating all the missing steps which would save days of frustrations & debugging.

Complete Guide:

I hope it benefits the community!

Labels (4)
1 Solution
Community Novice

**** EDIT 1/9/2024 ****

I was able to get this up and running finally. My problem ultimately was that I did not have the minimum specs outlined in your post: I only had 2 CPU cores instead of 4 on my droplet. My underpowered droplet was not able to complete Step 5 properly.

I started over from scratch and was able to get Canvas running with a working admin login, but I still needed the following corrections/additional steps:

  • Step 3: sudo chown "$current_user":"$current_user" "$new_directory"/canvas I had to add a -R to the chown command in order to recursively change ownership for all the files in the canvas directory or else it's not possible to continue the setup as a regular user.
  • Step 6: This is necessary to resolve an issue with base64 gem: In the passenger.conf file I added PassengerPreloadBundler On
  • Step 9: I had to add sudo ufw allow ssh before reloading ufw. You have to add this rule or else you firewall yourself out of your machine.
  • Step 9: Not necessary to get up and going, but needed if you want all of those ufw rules to actually be active: instead of sudo ufw reload, you need to do sudo ufw enable. sudo ufw reload does nothing if ufw is not enabled first.
  • Step 10: Canvas updated the example redis.yml config file so you need to replace servers: with url: or your login will not work

View solution in original post