> ## Documentation Index
> Fetch the complete documentation index at: https://ayakaleaf-pro.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# 5. 인스턴스 개인화

### 인스턴스 개인화

Overleaf 인스턴스를 처음 시작하기 전에 두 구성 파일을 사용자 정보로 업데이트하세요.

| 파일 | 읽는 주체 | 설정 항목 |
| - | - | - |
| `config/overleaf.rc` | `bin/up` 등의 Toolkit 스크립트 | 컨테이너 실행 방식: `OVERLEAF_LISTEN_IP`, `OVERLEAF_PORT`, `SERVER_PRO`, 데이터 경로 |
| `config/variables.env` | 컨테이너 내부의 애플리케이션 | Overleaf 동작 방식: `OVERLEAF_SITE_URL`, 이메일, TeX Live 이미지 |

**1. 변수 파일 편집**

선호하는 텍스트 편집기에서 `config/variables.env`를 열고 아래 환경 변수를 필요한 값으로 업데이트합니다.

**2. 수신 주소와 포트**

기본적으로 Toolkit은 웹 인터페이스를 `127.0.0.1:80`에 게시하므로 서버 자체의 브라우저에서만 열 수 있습니다. 다른 컴퓨터에서는 "connection refused" 또는 "server not found" 오류가 발생합니다. 이를 변경하려면 `config/overleaf.rc`를 편집하세요.

```bash title="config/overleaf.rc" theme={null}
OVERLEAF_LISTEN_IP=0.0.0.0
OVERLEAF_PORT=8080
```

`OVERLEAF_LISTEN_IP`는 컨테이너가 바인딩하는 호스트 IP 주소이고, `OVERLEAF_PORT`는 호스트 포트입니다. 두 값이 함께 Docker 포트 매핑 `OVERLEAF_LISTEN_IP:OVERLEAF_PORT:80`을 구성합니다. 환경에 맞는 값을 선택하세요.

| 환경 | `OVERLEAF_LISTEN_IP` | `OVERLEAF_PORT` | 브라우저에서 열 주소 |
| - | - | - | - |
| 이 머신에서만 접근(기본값) | `127.0.0.1` | `80` | `http://localhost` |
| LAN 또는 인터넷의 다른 컴퓨터가 직접 연결 | `0.0.0.0` 또는 서버의 IP 하나 | `80` 또는 사용 가능한 아무 포트 | `http://<server-ip>:<port>` |
| 같은 호스트의 자체 리버스 프록시(NGINX, Caddy, Cloudflare Tunnel) 뒤 | `127.0.0.1` | 사용 가능한 아무 포트 | 프록시의 URL |
| Toolkit [TLS 프록시](https://ayakaleaf-pro.mintlify.site/ko/on-premises/configuration/overleaf-toolkit/tls-proxy.md) 뒤 | `127.0.0.1` | `80` | `https://<your-domain>` |

호스트에서 다른 웹 서버 등이 이미 `80` 포트를 사용 중이라면 `OVERLEAF_PORT`를 `8080`과 같은 사용 가능한 포트로 설정하세요. 그렇지 않으면 `bin/up`이 `bind: address already in use` 오류와 함께 실패합니다.

> [!WARNING]
>
> Docker가 게시한 포트는 `ufw`나 `firewalld` 같은 호스트 방화벽을 우회합니다. `0.0.0.0`을 사용하면 서버가 연결된 모든 네트워크에서 인스턴스에 접근할 수 있습니다. 클라우드 서버에서는 공급자의 보안 그룹에서도 해당 포트를 허용해야 합니다. 인스턴스를 인터넷에 노출하기 전에 HTTPS를 사용하세요. [TLS 프록시](https://ayakaleaf-pro.mintlify.site/ko/on-premises/configuration/overleaf-toolkit/tls-proxy.md)를 참조하세요.

처음에는 기본값으로 시작하여 `localhost`에서 인스턴스를 먼저 열어 볼 수 있습니다. 나중에 다른 컴퓨터에서 접근할 수 있도록 하려면 `config/overleaf.rc`의 이 두 변수와 `config/variables.env`의 `OVERLEAF_SITE_URL`을 변경한 다음, `bin/up`을 다시 실행하여 컨테이너를 다시 생성하세요.

**3. 필수 환경 변수**

`config/variables.env`에서 다음 변수를 업데이트합니다.

| 이름 | 설명 | 예시 |
| - | - | - |
| `OVERLEAF_SITE_URL` | Overleaf 인스턴스가 공개적으로 제공되는 주소입니다. 공개 링크와 웹소켓 연결에 사용되므로 **반드시 올바르게 구성해야 합니다**! | `https://overleaf.lilliput.com` |
| `OVERLEAF_EMAIL_FROM_ADDRESS` | 이 이메일 주소는 모든 발신 이메일의 `from` 주소로 사용됩니다. | `no-reply@lilliput.com` |
| `OVERLEAF_ADMIN_EMAIL` | 사용자가 사이트 운영자에게 연락할 수 있는 이메일 주소입니다. | `it-services@lilliput.com` |

`OVERLEAF_SITE_URL`은 수신 주소가 아니라 사용자가 브라우저에 입력하는 주소입니다. 포트가 `80`(HTTP) 또는 `443`(HTTPS)이 아니면 포트를 포함하세요. 예: `http://192.168.1.20:8080`. `http://0.0.0.0`은 사용하지 마세요. `OVERLEAF_SITE_URL`이 브라우저의 주소와 일치하지 않으면 편집기가 연결되지 않고, 이메일의 링크와 OAuth 콜백이 잘못된 곳을 가리킵니다.

메일 서버가 없으면 `OVERLEAF_EMAIL_FROM_ADDRESS`를 설정하지 않은 상태로 두세요. 그러면 Overleaf가 이메일을 보내지 않으며, 새 사용자에게 활성화 링크를 직접 전달할 수 있습니다. [공개 접근](https://ayakaleaf-pro.mintlify.site/ko/on-premises/configuration/overleaf-toolkit/authentication/public-access.md)의 Q\&A를 참조하세요.

또한 `OVERLEAF_SESSION_SECRET`을 `openssl rand -hex 32`로 생성한 값으로 설정하세요. 이 값이 없으면 컨테이너를 다시 생성하는 모든 `bin/up`과 모든 업그레이드에서 모든 사용자가 로그아웃됩니다. [환경 변수](https://ayakaleaf-pro.mintlify.site/ko/on-premises/configuration/overleaf-toolkit/environment-variables.md)의 Q\&A를 참조하세요.

이 환경 변수를 업데이트했으면 저장하고 종료합니다.

**4. 샌드박스 컴파일 설정**

다음으로 [sandboxed-compiles.md](https://ayakaleaf-pro.mintlify.site/ko/on-premises/configuration/overleaf-toolkit/sandboxed-compiles.md "mention")를 위해 TeX Live Full을 구성합니다. `config/variables.env`를 열고 다음 환경 변수를 업데이트합니다.

```dotenv title="config/variables.env" wrap theme={null}
ALL_TEX_LIVE_DOCKER_IMAGES=ghcr.io/ayaka-notes/texlive-full:2026.1, ghcr.io/ayaka-notes/texlive-full:2025.1
ALL_TEX_LIVE_DOCKER_IMAGE_NAMES=Texlive 2026, Texlive 2025
TEX_LIVE_DOCKER_IMAGE=ghcr.io/ayaka-notes/texlive-full:2026.1
```

**5. 인스턴스 시작**

인스턴스를 시작하려면 다음을 실행합니다.

```text title="Start the instance" theme={null}
bin/up
```

이 명령은 texlive를 포함한 필요한 이미지를 다운로드하고, (사용자 지정 설정을 사용하여) 컨테이너를 생성한 다음 인스턴스를 시작합니다. 여러 Docker 컨테이너의 로그 출력이 표시됩니다.

나중에 (로그 출력에 연결하지 않고) 다시 시작하려면 다음을 실행합니다.

```text title="Start without attaching to logs" theme={null}
bin/start
```

> [!NOTE]
>
> Toolkit은 `docker compose`를 사용하여 Overleaf Docker 컨테이너를 관리합니다. Toolkit은 `docker compose`를 감싸는 스크립트 모음을 제공하여 대부분의 세부 사항을 대신 처리해 줍니다.

모든 것이 순조롭게 진행되면 브라우저에서 [http://127.0.0.1/](http://127.0.0.1/) 또는 [http://localhost/](http://localhost/)로 이동하여 새 Overleaf 인스턴스의 로그인 페이지를 볼 수 있습니다. `OVERLEAF_LISTEN_IP` 또는 `OVERLEAF_PORT`를 변경했다면 대신 **수신 주소와 포트** 단계의 표에 있는 주소를 여세요. 예: `http://<server-ip>:8080`.

웹 인터페이스가 게시된 주소와 포트를 확인하려면 다음을 실행하세요.

```text title="Show the published port" theme={null}
bin/docker-compose port sharelatex 80
```

출력(예: `0.0.0.0:8080`)에 사용 중인 호스트 IP 주소와 포트가 표시됩니다. `127.0.0.1`이 표시되면 서버 자체에서만 인스턴스에 접근할 수 있습니다.

> [!WARNING]
>
> 네트워크 구성과 Overleaf 인스턴스가 호스팅되는 위치에 따라 추가 구성 변경이 필요할 수 있습니다. 자세한 내용은 Toolkit 설정을 참고하세요: [toolkit-settings.md](https://ayakaleaf-pro.mintlify.site/ko/on-premises/configuration/overleaf-toolkit/toolkit-settings.md "mention")


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.