Table of Contents
System requirements
For detailed information about the VM / system requirements, check the "System Requirements" page.
ReSeeD deployment
builder
VM. For details, see the "Image Building" page.
The images are moved to the production instance. To continue the deployment we need the following files from the ReSeeD source tree:
./create_volume_directories.sh
./docker-compose.yml
./hyrax/solr/*
.env
Setup the ReSeeD config (.env)
git clone https://gitlab.ruhr-uni-bochum.de/researchdata/rdms.git
cd rdms/
cp .env.template .env
editor .env
When editing the .env
file, set the values for following variables to unique random values (generated using something like pwgen -s 64 1
):
SECRET_KEY_BASE_PRODUCTION=""
DEVISE_SECRET_KEY="" # Use long key, at least 50 characters or smth for both secret keys
Other variables to be set (this example is not for production, only for testing):
HYRAX_ANALYTICS=false
USE_SAML=false
REGISTER_DOI=false
USE_ORCID=false
Further details on the configuration parameters can be found here.
# S3 configuration
USE_S3=true
S3_ENDPOINT="https://s3.example.net"
S3_ACCESS_KEY="some_example_access_key"
S3_SECRET_KEY="secret_change_me"
S3_REGION="us-east-1"
# S3_BUCKET_PREFIX needs to be unique to allow identical bucket names for different ReSeeD instances on Ceph S3
S3_BUCKET_PREFIX="prod-20240401-v1"
You can reach the new ReSeeD instance from your Docker host (for example by using SSH tunneling) by using the following URL: http://localhost:3000/users/sign_in
Using the latter URL, you won't be able to login. To log in to the instance, use the following URL: http://localhost:3000/users/system_sign_in -> Noticed the system_
?
Misc
web-container
:
docker exec -u root -it reseed-web-1 /bin/bash
Change / Set the password for the admin user
bash-5.1# rails c
irb(main):001:0> u1 = User.find_by(email: ENV['SYSTEM_ADMINISTRATOR'])
irb(main):001:0> u1.password = "example_password"
irb(main):001:0> u1.save
Change / Set the password for the publication manager
bash-5.1# rails c
irb(main):001:0> u2 = User.find_by(email: ENV['SYSTEM_PUBLICATION_MANAGER'])
irb(main):001:0> u2.password = "example_password"
irb(main):001:0> u2.save
Completely wipe everything, including the data
# Wipe containers and data
docker compose --file docker-compose.yml down --volumes
# Rebuild the containers
docker compose --file docker-compose.yml up --detach
sudo rm -rf volumes/
chmod u+x create_volume_directories.sh
./create_volume_directories.sh