영구 데이터
Overleaf Toolkit은 LaTeX 프로젝트 컴파일에 필요한 파일과 MongoDB 데이터베이스의 내용 같은 영구 데이터를 저장해야 합니다. 이를 위해 호스트 머신의 몇몇 디렉터리를 Docker 컨테이너에 마운트하고, 해당 디렉터리에 데이터를 기록합니다.데이터 디렉터리
sharelatex 컨테이너에는 LaTeX 컴파일 관련 데이터를 저장할 디렉터리가 필요합니다. 이 디렉터리는 config/overleaf.rc의 OVERLEAF_DATA_PATH 변수로 설정합니다.
mongo 컨테이너가 활성화된 경우 데이터베이스 파일을 저장할 디렉터리가 필요하며, redis 컨테이너도 마찬가지입니다. 이 디렉터리들도 config/overleaf.rc에서 구성할 수 있습니다.
파일 권한
Docker는root로 실행되므로, Toolkit을 root가 아닌 사용자가 사용하더라도 데이터 디렉터리의 소유자는 root 사용자가 됩니다. 이는 문제가 되지 않지만, 컨테이너 외부에서 영구 데이터를 수정하려는 경우에는 알아 두는 것이 좋습니다.
구성 파일 위치
사용자가 소유하는 모든 구성 파일은config/ 디렉터리에 있습니다.
이 디렉터리는 git 버전 관리 시스템에서 제외되어 있으므로 Toolkit 코드를 업데이트해도 변경되지 않습니다. Toolkit은 사용자의 허락 없이 config/ 디렉터리의 데이터를 변경하지 않습니다.
구성 파일의 변경 사항은 컨테이너를 중지했다가 다시 시작하더라도(
bin/stop 및 bin/start 사용) 기존 컨테이너에 자동으로 적용되지 않습니다. 변경 사항을 적용하려면 bin/up을 실행하세요. 그러면 내부적으로 docker compose가 새 컨테이너에 구성 변경 사항을 자동으로 적용합니다. (Docker 로그에 연결하지 않으려면 bin/up -d를 실행하세요.)overleaf.rc 파일
config/overleaf.rc 파일에는 Toolkit이 사용하는 가장 중요한 최상위 구성 설정이 들어 있습니다. 이 파일은 VARIABLE_NAME=value 형식으로 변수를 설정하는 구문으로 이루어져 있습니다.
사용 가능한 모든 구성 옵션의 자세한 내용은 설정 섹션을 참조하세요.
variables.env 파일
config/variables.env 파일에는 sharelatex 컨테이너에 로드되어 Overleaf 마이크로서비스를 구성하는 데 사용되는 환경 변수가 들어 있습니다. 여기에는 웹 인터페이스 헤더에 표시되는 애플리케이션 이름, 이메일 발송 설정, Server Pro에서 사용하는 SSO 같은 프리미엄 설정 등이 포함됩니다.
사용 가능한 모든 환경 변수의 자세한 내용은 환경 변수 섹션을 참조하세요.
version 파일
config/version 파일에는 Overleaf 서버의 실행 인스턴스를 생성하는 데 사용될 Docker 이미지의 버전 번호가 들어 있습니다.
이러한 구성 파일의 변경 사항은 컨테이너를 중지했다가 다시 시작하더라도(
bin/stop 및 bin/start 사용) 기존 컨테이너에 자동으로 적용되지 않습니다. 변경 사항을 적용하려면 bin/up을 실행하세요. Toolkit이 구성 변경 사항이 적용된 새 컨테이너를 자동으로 생성합니다.docker-compose.override.yml 파일
config/docker-compose.override.yml 파일이 있으면 docker compose 호출 시 함께 포함됩니다. Docker Compose 관련 구성을 재정의할 때 유용합니다.
자세한 내용은 docker-compose 문서를 참조하세요.
