...
Code Block |
---|
mysql
mariadb> create database fcrepo;
mariadb> create user 'fcrepo'@'localhost' identified by '<fcrepo_password>';
mariadb> grant all privileges on fcrepo.* to 'fcrepo'@'localhost';
mariadb> create database rails;
mariadb> create user 'rails'@'localhost' identified by '<rails_pasword>';
mariadb> grant all privileges on rails.* to 'rails'@'localhost';
mariadb> flush privileges; |
...
Code Block |
---|
source /home/avalon/.rvm/scripts/rvm
rvm use 2.5.7
exit |
Install Passenger apache module requirements (as root)
Code Block |
---|
su - root
yum install -y pygpgme curl
curl --fail -sSLo /etc/yum.repos.d/passenger.repo install -y https://oss-binaries.phusionpassenger.com/yum/definitions/el-passenger.repo
yum install mod_passenger || yum-config-manager --enable cr && yum install -y mod_passenger |
Create a virtual host for avalon
...
Code Block |
---|
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:!RC4:+HIGH:+MEDIUM:-LOW |
Restart apache. With apache running, check passenger-status
...
Modify /etc/httpd/conf.d/passenger.conf
Code Block |
---|
PassengerRuby /home/avalon/.rvm/rubies/ruby-2.5.7/bin/ruby |
Validate passenger install and restart apache
Code Block |
---|
passenger-config validate-install
systemctl start httpd |
Avalon
Grab Avalon code from github
Code Block |
---|
su - root
git clone https://github.com/avalonmediasystem/avalon.git /var/www/avalon
chown -R avalon:avalon /var/www/avalon/public/ |
Configure database settings
...
Code Block |
---|
# as root
yum install nodejs # Javascript runtime
# as avalon
su - avalon
cd /var/www/avalon
gem install bundler
bundle install --with mysql production --without development test
exit |
Install yarn and node modules
Code Block |
---|
# as root
curl --silent --location https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo
yum install yarn
# as avalon
su - avalon
cd /var/www/avalon
yarn install |
Finish configuring Avalon
...
Code Block |
---|
production:
user: fedoraAdmin
password: fedoraPasswordfedoraAdmin
url: http://127.0.0.1:8984/fedora4/rest
base_path: "" |
...
Let Avalon know where your HLS streams are
...
title | config/settings/development.local.yml |
---|
...
Code Block |
---|
title | config/settings/production.local.yml |
---|
|
streaming:
server: :nginx
http_base: 'http://localhost:8980/avalon'
content_path: '/var/avalon/derivatives' |
Change the secrets.yml file:
Code Block |
---|
cd /var/www/avalon
export RAILS_ENV=production
rake secret |
...
Create controlled_vocabulary.yml
Code Block |
---|
cp config/controlled_vocabulary.yml.example config/controlled_vocabulary.yml |
Create the database using rake
Code Block |
---|
# as avalon user
rake db:create |
If you get an error message saying that you can't connect to the database, take a look at this post and follow some of the troubleshooting steps.
...
Avalon uses Sidekiq for background processing, which relies on Redis as its key-value store.
Install Redis
Code Block |
---|
# as root
yum install redis
systemctl start redis |
Install Sidekiq
Code Block |
---|
# as root
wget https://raw.githubusercontent.com/mperham/sidekiq/master/examples/systemd/sidekiq.service -O /lib/systemd/system/sidekiq.service |
...