OS - Ubuntu 16 Date - 11/06/2017
I'm trying to install Canvas LMS
on my local computer.
Following "https://github.com/instructure/canvas-lms/wiki/Production-Start"
this link
Step One - Database installation and configuration
Installing Postgres
a. sudo apt-get install postgresql-9.3
but i'm getting an error
('postgresql-9.3' has no installation candidate)
So, I used bellow commands
a. sudo apt-get update
b. sudo apt-get install postgresql postgresql-contrib
Configuring Postgres
a. sudo -u postgres createuser canvas --no-createdb \
--no-superuser --no-createrole --pwprompt (i set password `'portal'`)
b. sudo -u postgres createdb canvas_production --owner=canvas
Step Two - Getting the code
Using Git
a. sudo apt-get install git-core
b. git clone https://github.com/instructure/canvas-lms.git canvas
c. cd canvas
d. git branch --set-upstream-to origin/stable
Code installation
a. sudo mkdir -p /var/canvas
b. sudo chown -R anup /var/canvas
c. cd canvas
d. sudo cp -av . /var/canvas
e. cd /var/canvas
Step Three - Dependency Installation
External dependencies
a. sudo apt-get install software-properties-common
b. sudo apt-add-repository ppa:brightbox/ruby-ng
c. sudo apt-get update
d. sudo apt-get install ruby2.4 ruby2.4-dev zlib1g-dev libxml2-dev \
libsqlite3-dev postgresql libpq-dev \
libxmlsec1-dev curl make g++
e. curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
f. sudo apt-get install nodejs
g. sudo -u postgres createuser ultron
h. sudo -u postgres psql -c "alter user ultron with superuser" postgres
Step Four - Ruby Gems
Bundler and Canvas dependencies
a. sudo gem install bundler --version 1.13.6
b. bundle install --path vendor/bundle
Yarn
Installation
a. curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
b. echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
c. sudo apt-get update && sudo apt-get install --allow-downgrades yarn=0.27.5-1 (Cause i'm using Ubuntu 16)
d. sudo apt-get install python
e. yarn install
Step Five - Canvas default configuration
a. for config in amazon_s3 database \
delayed_jobs domain file_store outgoing_mail security external_migration; \
do cp config/$config.yml.example config/$config.yml; done
Dynamic settings configuration
a. cp config/dynamic_settings.yml.example config/dynamic_settings.yml
b. nano config/dynamic_settings.yml (Haven't Changed anything)
Database configuration
a. cp config/database.yml.example config/database.yml
b. nano config/database.yml
have changed From -
--# do not create a queue: section for your test environment
--test:
-- adapter: postgresql
-- encoding: utf8
-- database: canvas_test
-- host: localhost
-- username: canvas
-- timeout: 5000
--
--development:
-- adapter: postgresql
-- encoding: utf8
-- database: canvas_development
-- timeout: 5000
--production:
-- adapter: postgresql
-- encoding: utf8
-- database: canvas_production
-- host: localhost
-- username: canvas
-- password: portal
-- timeout: 5000
to this
--# do not create a queue: section for your test environment
--test:
-- adapter: postgresql
-- encoding: utf8
-- database: canvas_test
-- host: localhost
-- username: canvas
-- timeout: 5000
--development:
-- adapter: postgresql
-- encoding: utf8
-- database: canvas_production
-- host: localhost
-- username: canvas
-- password: portal
-- timeout: 5000
--production:
-- adapter: postgresql
-- encoding: utf8
-- database: canvas_production
-- host: localhost
-- username: canvas
-- password: portal
-- timeout: 5000
Outgoing mail configuration
a. cp config/outgoing_mail.yml.example config/outgoing_mail.yml
b. nano config/outgoing_mail.yml (Haven't Changed anything)
URL configuration
a. cp config/domain.yml.example config/domain.yml
b. nano config/domain.yml
Security configuration a. cp config/security.yml.example config/security.yml b. nano config/security.yml
Step Six - Generate Assets
1.
a. cd /var/canvas
b. mkdir -p log tmp/pids public/assets app/stylesheets/brandable_css_brands
c. touch app/stylesheets/_brandable_variables_defaults_autogenerated.scss
d. touch Gemfile.lock
e. sudo chown -R anup config/environment.rb log tmp public/assets \
app/stylesheets/_brandable_variables_defaults_autogenerated.scss \
app/stylesheets/brandable_css_brands Gemfile.lock config.ru
f. yarn install
g. RAILS_ENV=production bundle exec rake canvas:compile_assets
Error - encryption key is too short, see security.yml.example, so i changed the sequrity.yml.example
From this -
--production:
-- # replace this with a random string of at least 20 characters
-- encryption_key: 12345
--development:
-- encryption_key: facdd3a131ddd8988b14f6e4e01039c93cfa0160
-- previous_encryption_keys:
-- - 0610afc39c93010e4e6f41b8898ddd131a3ddcaf
--test:
-- encryption_key: facdd3a131ddd8988b14f6e4e01039c93cfa0160
to this -
--production:
-- # replace this with a random string of at least 20 characters
-- encryption_key: facdd3a131ddd8988b14f6e4e01039c93cfa0160
--development:
-- encryption_key: facdd3a131ddd8988b14f6e4e01039c93cfa0160
-- previous_encryption_keys:
-- - 0610afc39c93010e4e6f41b8898ddd131a3ddcaf
--test:
-- encryption_key: facdd3a131ddd8988b14f6e4e01039c93cfa0160
Problem Not resolved - Whatever i'm putting there getting the same error
h. sudo chown -R anup public/dist/brandable_css
Getting this error -
cannot access 'public/dist/brandable_css': No such file or directory
I'm stuck here, Please Help
Thank you!
A quick answer to the question, based on the lengthy series of comments.
The file security.yml needed to be edited, rather than security.yml.example.