Skip to content
/ eln Public

Electronic Lab Notebooks (ELNs) Docker stack for testing purposes

Notifications You must be signed in to change notification settings

krkabol/eln

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 

Repository files navigation

ELNs testing

Electronic Lab Notebooks for testing purposes. Definitely not suitable for production, but provides isolated sandbox for individual research groups. The only goal is to deploy them quickly. Any feedback welcomed.

General points:

  • based on Docker, for simple CPU/RAM usage use docker stats
  • http/self-signed certificates are a necessary limitation
  • SMTP (emails) and scheduled task/message queue (cron, Celery Beat etc.) ignored
  • if you run it on your own laptop, then the model call is https://localhost:8001; else if you run it on VM with IP address 192.168.xx.yy, then https://192.168.xx.yy:8001...
  • Stack contains passwords in plain text etc. - please think first, then act

Commands:

  • run them inside the specific ELN folder
  • start: docker compose up -d --build
  • stop: docker compose down
  • stop and delete data (of the specific ELN): docker compose down -v.

eLabFTW

Instance exposed on port 8001.

startup

cd eLabFTW
docker-compose up -d # and wait(!)

The first initialization takes really long time, even more than 10(15) minutes. When you get bored, check from time to time docker logs elabftw. Message

s6-rc: fatal: timed out

s6-sudoc: fatal: unable to get exit status from server: Operation timed out"

is OK, the initialization is running and you have to wait. I first restarted the containers in this state - such an action led to a running instance, but with incomplete data in db tables - especially the "Default team" item missing in teams table, which makes the whole app impossible to use.

Therefore - wait and periodically check logs docker logs elabftw until you reach this message:

✓ Installation successful! You can now start using your eLabFTW instance.

→ Register your Sysadmin account here: https://localhost:8001/register.php

The first registered user becomes the superadmin. All other info in docs https://doc.elabftw.net/generalities.html. But in my tests, the link is unavailable. I expect it has to deal with Nginx, certificates and startup logic of the official container and have no exact explanation. Fortunately, the solution is simple - just restart containers docker compose down && docker compose up -d.

Kadi4Mat

Instance exposed on port 8002.

Settings prepared for location https://localhost:8002 ("run and use on my laptop"). Not tested yet, but probably needs accommodate for specific IP the users will access to ("run on remote server"). If it's proven, edit listed locations before you start or after cleanup (docker compose down -v):

  • Kadi4Mat/Dockerfile:12
  • Kadi4Mat/kadi.conf:2,4,8
  • Kadi4Mat/kadi.py:8

startup

cd Kadi4Mat
docker-compose up -d --build

Should you need an admin role for a user, please execute docker exec -it kadi4mat bash, you will step into the running container. Follow with kadi users sysadmin 1, where "1" represents the ID of the user (incremental integer starting from 1, or you can check in GUI in Profile - Account type: Local · Persistent ID: XXX). To exit container, execute exit - management of users is now available in the GUI using this user.

RSpace

Based on https://github.com/rspace-os/rspace-docker

cd RSpace
docker-compose up -d --build

First startup takes again approx 10min. Login with the username sysadmin1 and the password sysWisc23!

Instance exposed on port 8003, according the hostname see above and pay attention to:

  • RSpace/deployment.properties:14

About

Electronic Lab Notebooks (ELNs) Docker stack for testing purposes

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published