
eLabFTW, 최고의 무료 전자연구노트 셋업 -설치-
eLabFTW란?
eLabFTW
는 무료 오픈소스 전자연구노트(Electronic Lab Notebook, ELN)이다. 연구실에서 실험 데이터, 프로토콜, 결과를 체계적으로 관리할 수 있는 웹 기반 플랫폼으로, Deltablot
이라는 프랑스 기업에서 유지하고 개발하는 프로그램이라 생각하면 좋다.
주요 특징
- 무료 오픈소스: 솔직히 구노나 정부에서 제공하는 전자연구노트나 모두 별로라고 생각된다. 이런 상용 소프트웨어보다 훨씬 저렴하게 사용할 수 있고, 무엇보다 오픈소스이기 때문에 본인이 원하는 기능을 직접 구현하는 것도 가능하다.
- 웹 기반: 브라우저로 접근 가능하기 때문에 전자기기의 운영체제에 국한되지 않고 다양한 곳에서 접속할 수 있다. 프로토콜을 적어놨다면 실험하다가 그냥 핸드폰으로 볼 수 있다.
- 데이터베이스 및 위키링크 연동: 실험 데이터를 체계적으로 관리할 수 있다. 위키피디아를 자주 사용했다면
위키링크
를 본 적이 있을 것이다. 연구노트 사이에 다른 연구노트 내용을 링크해놓을 수 있기 때문에옵시디언
이나노션
같은 방식으로 구현할 수 있다. - 협업 기능: 연구팀원들과 실시간 공유가 가능하다. 일정 같은 것도 볼 수 있고, 기기 예약이나 기타 사항들도 모두 이 플랫폼에서 처리할 수 있는 것이다.
- 백업 및 보안: 이게 진짜 최강의 특징이다. 데이터가 당신의
Local 컴퓨터
에 직접 저장된다는 것이다. 백업을 하는 것도, 자료를 관리하는 것도 당신의 선택이다. 그런데전자연구노트
로서 조작이 가능한 것은 아닌지 의심이 될 것이다. 이것을 극복하기 위해서Signature 방식
과제3기관을 통한 시점인증 시스템
이 있다! 걱정하지 말자! ** 결론적으로eLabFTW
는 매우 훌륭한 전자연구노트 플랫폼이라 할 수 있다. 이제부터 설치를 진행해보도록 하자.
공식 설치 방법은 오른쪽 링크를 참고 공식 설치 설명
당황하지말자. 기본적으로 이 시스템은 Server
소프트웨어이기 때문에 linux
계열을 요구하고 있으나 Windows
에 설치하지 못하는 시스템은 아니다. 지금부터 Windows
에 야매로 설치하는 방법을 공유할테니 한번 따라가도록 하자.
준비물:
- 운영체제: Windows 11 (with WSL2)
- 당신의 노력: 한 줌
설치 과정
1. WSL2 설정 및 Ubuntu 설치
윈도우에는 WSL2
라는 강력한 linux 가상환경
이 존재한다. 우리는 이것을 사용할 예정이기 때문에 우선, WSL2
를 활성화 하도록 하자.
작업표시줄
검색창에Windows 기능 켜기/끄기
를 치고 실행하자. 그러면 아래와 같은 것이 나온다.Linux용 Windows 하위 시스템
에 체크를 표시하고확인
을 누르면 된다.

- 시스템을 다시 시작하라는 메세지가 뜬다면
시스템을 다시 시작
한다. Win+R
로실행
을 호출하고 여기에cmd
를 입력해명령 프롬프트
를 실행한다.

- 위처럼
wsl
을 입력하면 아마 기본Ubuntu
가 설치될 것이다.잘 안된다면 구글링을 하자.
2. WSL2에 Docker 설치하기
이 부분이 좀 까다롭다. Docker에는 Docker compose라는 기능이 있는데 이것이 V1, V2로 나뉜다. 자세한건 사실 알 필요 없고, 이제는 V1은 사용하지 않으니까 V2로 설치해야 하는데 그걸 알아보자.
- 우선, 설치했던
WSL
환경에 접속하자.CMD
라는명령프롬프트
에서wsl
을 쳐도 되고,검색창
에서wsl
을 검색해서 실행해도 된다.

이런 식의 화면이 보여질텐데, 맨 아랫줄이 조금 다르더라도 당황하지 말자. 본인은 Conda
를 설치해놓아서 그런거다. 그냥 무시하고 진행하면 된다. 이제 아래의 코드들을 순차적으로 차근차근히 복사+붙여넣기
하면 된다.
sudo apt-get update
sudo apt-get install -y ca-certificates curl gnupg
# 아래 코드 뭉치는 한번에 긁어서 쓰면 된다.
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg \
| sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
# 아래 코드도 엔터가 있기 전까지 쭉 긁어서 쓰자.
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] \
https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo ${UBUNTU_CODENAME:-$VERSION_CODENAME}) stable" \
| sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
이렇게 하면 Docker
설치를 위한 APT
저장소 등록이 끝난거다. 복잡하게 보이지만 그렇지 않다!
이제 Docker
와 Docker compose V2
등을 같이 설치하자. 아래 코드를 모두 복사해서 붙여넣자.
sudo apt-get install -y docker-ce docker-ce-cli containerd.io \
docker-buildx-plugin docker-compose-plugin
워후! 이제 필요한 Docker
들은 모두 설치된 셈이다.
docker compose version # 예시 출력: Docker Compose version v2.39.1
docker --version # 예시 출력: Docker version 28.3.3, build 980b856
위 2개의 명령어를 wsl
에 입력하여 잘 출력되는지 확인해보고 다음으로 진행하면 된다. 참고로 출력된 버전이 달라도 괜찮다. 아마 본인의 프로그램보다 더 최신 프로그램이 설치되었을 것이다.
3. eLabFTW 설치
이제 본격적으로 eLabFTW를 설치할 것이다!
우선, 우리는 elabctl
이라는 프로그램을 사용할 것이기 때문에 이것을 사용하기 전에 먼저 설치해야하는 dialog
를 설치하자. 아래의 명령어를 또 다시 입력하면 된다.
sudo apt-get install dialog
그리고 이제 elabctl
을 설치하자. 이건 그냥 elabftw
설치를 도와주는 스크립트 뭉치인데 편하니까 이걸 쓰도록 하자.
# 아래 코드로 elabctl 파일을 다운 받고 권한을 설정한다.
curl -sL https://get.elabftw.net -o elabctl && chmod +x elabctl
# 아래 코드는 이걸 `bin`에 옮겨서 `terminal`에서 쓸 수 있게 해준다.
sudo mv elabctl /usr/local/bin/
sudo elabctl install
여기까지 진행했다면 dialog
로 된 설치 창이 뜰거다. 자세히 기억은 나지 않지만 아래 순서로 따라가자.
- 확인
- 너무 조아용
- 내 컴퓨터
- 완료
아마 이럴 것이다. 설치화면을 첨부하고 싶었으나 설치화면으로 가려면 기존에 설치되어있던걸 삭제하라고 하길래 내 기억을 더듬어 보았다. 재설치가 얼마나 귀찮은 줄 아는가… 기회가 되면 포스터를 수정하겠다.
이제 정말 중요한
설정
단계가 남아있다!
정신을 똑바로 차리고 따라와야 한다.
sudo nano /etc/elabftw.yml
위 명령어를 쳐서 파일을 편집하자.

빨간 네모 안에 있는 부분들을 모두 수정해주자. DB_PASSWORD
는 나중에 원할하게 migration
할 수 있도록 본인이이 자주 사용하는 비밀번호로 설정하면 된다. 나머지 TIMEZONE
관련 요소들은 Asia/Seoul
로 변경하도록 하자.

여기도 수정해주면 된다. SITE_URL
에는 본인이 나중에 등록하고 싶은 URL
을 쓰면 되는데 나중에 꼭 다룰 기회가 된다면 다루도록 하겠다. 현재는 있으나 마나한 기능. 다만 아래에 있는 MAX_UPLOAD_SIZE
부분은 매우 중요하다. 업로드하는 파일 1개당 최대 용량이 기본적으로는 100MB
로 제한 되어있는데 나는 화끈하게 512MB
로 늘려놓았다. LC-MS
분석 파일 같은거 올리면 용량이 엄청나기 때문이다.

쭉 내리다보면 PLUGINS
를 설정하는 곳이 있는데 highly recommended
라고 적혀있다. 싹 다 활성화 해주자. 꼭 false
가 true
로 변경 되어있다는 것에 유의하도록 하자.

본인은 DEV_MODE
도 켰고, volumes
에서 저런 식으로 적어놨다. 하지만 일반적인 사용에서 DEV_MODE
를 켤 필요가 없다. volumes
에 추가로 적어놓은 것의 뜻은 Windows
가 실행되고 있는 C드라이브
의 elabftw/uploads
폴더와 elabftw
프로그램의 업로드
폴더를 붙여놓아 달라고 요청한 것이다. WSL2
시스템은 하나의 가상 하드 드라이브를 만들어서 사용하는 것이기 때문에 오류에 취약하다. 위와 같이 세팅하면 업로드
파일들은 모두 C드라이브
에 무사히 보관할 수 있으며, 구글 드라이브, 원드라이브
같은 클라우드 플랫폼으로 2중 백업 구성이 가능하다.
DEV_MODE
를 킨 것은 추후 소스코드 수정 시 해당 부분이 바로 반영 될 것이라고 기대하고 그렇게 한 것인데 알고보니 Cache 기능만 비활성화 되는거지, 소스코드를 minify 하는 건 따로 진행해야 하더라. 이걸 쓰지 않고 소스 코드
를 고치려고 한다면 yarn buildadll
명령어를 쓰면 아마 해결 될 것이다. 이건 나중에 후속 포스터에서 더 다룰 것이므로 지금은 신경쓰지 않아도 된다.
MySQL
이 업데이트 되면서 마운팅 드라이브에서 I/O 오류
를 일으키는 것 같다. 고급 사용자들은 아마 MySQL
정보를 다른 Local 저장소에 마운팅하고 싶을텐데 WLS2 환경을 사용하고 있다면 적어도 윈도우 I/O를 거치도록 만들지는 말자.
여기까지 모든 설정을 완료했다면 Ctrl+S
및 Ctrl+X
를 눌러서 저장하고 nano
편집기를 종료하자.
sudo elabctl start
를 입력해서 뭔가 실행되는 것처럼 보이게 해보자.
하지만 아직 끝나지 않았다. 아래 명령어를 입력하자.
sudo elabctl initialize
오류 발생 시 대처
만약 여기 부분에서 오류가 발생했다면 아마 MySQL
컨테이너에서 elabftw
계정이 만들어지지 않았기 때문일 수 있다. docker ps
를 입력해서 정상적으로 출력되고 있는 것을 보았다면, 이제 계정 상태를 확인할 차례다.
docker exec -it mysql mysql -u root -p
- 설정했던
MySQL
암호를 입력하자. SELECT user, host FROM mysql.user;
입력하여 확인- 아래 명령어를 입력하는데,
설정했던_MySQL_암호
부분은 설정했던 것에 맞춰서 바꾼 뒤에 입력하면 된다.
CREATE USER 'elabftw'@'%' IDENTIFIED BY '설정했던_MySQL_암호';
GRANT ALL PRIVILEGES ON *.* TO 'elabftw'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
설치 완료, 접속
여기까지가 끝이다. 이제 접속
을 해야할텐데 문제는 지금 WSL2
로 열어놓은 Ubuntu OS
내에 접속을 해야한다는 것이다. 무슨 말인지 잘 모를 수 있다.
- 아래 명령어를
WSL2
에 입력해보자. ip addr | grep 'inet '

- 여기에서
eth0
이라는 부분이 있을텐데, 그 IP로 접속할거니까 꼭 기억해주자.
기본적으로 eLabFTW
는 443
포트를 사용한다. 아는 사람은 알겠지만 이건 HTTPS
로 접속한다는 이야기다. 근데 모르는 사람은 모를 이야기… 세세한 것은 신경쓰지 말고 그냥 방금 찾은 IP
를 주소창에 https://IP번호
형식으로 입력하면 된다.
이건 자연스러운 현상이다. HTTPS
프로토콜로 접속했는데 인증서
가 없어서 저런 경고가 뜨는 건데, 고급
에서 안전하지 않음
으로 계속하기 누르면 된다. 아마 처음 접속한다면 https://IP주소/register.php
에 접속해서 이것저것 설정하면 될 것이다.
아직은 WSL2
에서만 접속이 가능한 상태이다. 이것을 모두가 쓸 수 있도록 하려면 본인 컴퓨터 IP
로 연결 요청을 받았을 때 WSL2 IP
로 전환해주는 것을 설정해야하고, 다음으로는 외부
에서 접속할 때 본인 컴퓨터 IP
로 연결 요청을 할 수 있도록 DDNS
같은 것들을 설정해야한다. 이것은 추후에 다루도록 하자.
싱겁지만 이렇게 끝이다. 다음 구성은 아래와 같이 작성해볼까 한다.
- eLabFTW, 최고의 무료 전자연구노트 셋업 -네트워크 설정-
- eLabFTW, 최고의 무료 전자연구노트 셋업 -소스코드 건들기-
- eLabFTW, 최고의 무료 전자연구노트 셋업 -업데이트-
참고 자료
이 글은 eLabFTW 설치의 기본적인 틀을 제공합니다. 실제 설치 시에는 공식 문서를 참고하시기 바랍니다.