> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ipmideck.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 웹 UI에서 업데이트

> 브라우저에서 ipmideck 새 릴리스를 설치하는 방법과 Docker 설치에서 Watchtower로 같은 작업을 하도록 설정하는 방법입니다.

새 버전이 게시되면 ipmideck은 알림을 한 번 표시하고, 설치할 때까지 사이드바의 버전 옆에 업데이트 버튼(위쪽 화살표, 보안 릴리스는 방패)이 남아 있습니다. 둘 다 새 버전의 릴리스 노트를 열며, ipmideck이 직접 설치할 수 있으면 **다운로드 및 설치** 버튼도 표시합니다.

## 버튼이 하는 일

변경하기 전에 ipmideck은 데이터베이스, 암호화 키, `config.yaml`을 [데이터 디렉터리](/ko/configuration#구성이-위치하는-곳)의 `backups/`에 백업합니다.

| 설치 방식 | 결과 |
| - | - |
| 가상 환경의 pip, pipx, uv | 새 버전을 설치하고 ipmideck을 다시 시작합니다. 새 버전이 실행되면 페이지가 자동으로 새로 고쳐집니다. |
| Windows의 pip, pipx, uv | 업데이트를 설치할 수 있도록 ipmideck이 중지되며, 이후 다시 실행해야 합니다. 진행 상황은 데이터 디렉터리의 `update.log`에 기록됩니다. |
| Watchtower를 사용하는 Docker | Watchtower가 새 이미지를 받아 컨테이너를 교체합니다. 페이지가 자동으로 새로 고쳐집니다. |
| Watchtower 없는 Docker | Docker 호스트에서 실행할 명령이 대화 상자에 표시됩니다. |
| git 체크아웃, 시스템 Python, 편집 가능 설치 | 대화 상자에 이유와 실행할 명령이 표시됩니다. 시스템이 관리하는 Python은 설치한 방식 그대로 업데이트합니다. |

## 요구 사항

* 로그인이 켜져 있어야 합니다. 이 버튼은 실행 중인 프로그램을 교체하기 때문입니다.
* 데모 모드에서는 버튼을 사용할 수 없습니다.
* 자동으로 다시 시작하려면 ipmideck이 `ipmideck` 명령으로 시작되어야 합니다. 다른 방법으로 시작한 경우 업데이트를 설치한 뒤 다시 시작하라고 안내하며, Windows에서는 대신 명령을 표시합니다.

## Docker와 Watchtower

컨테이너는 자신의 이미지를 교체할 수 없으며, ipmideck에 Docker 소켓 접근 권한을 주면 호스트를 제어할 수 있게 됩니다. 대신 별도의 [Watchtower](https://github.com/nicholas-fedor/watchtower) 컨테이너가 ipmideck의 요청에 따라 교체를 수행합니다.

<Steps>
  <Step title="ipmideck 컨테이너에 레이블 지정">
    Watchtower가 관리할 수 있도록 레이블을 붙여 ipmideck을 시작합니다:

    ```bash theme={null}
    docker run -d --name ipmideck --network host \
      --label com.centurylinklabs.watchtower.enable=true \
      -v ipmideck-data:/data devluigi06/ipmideck:latest
    ```
  </Step>

  <Step title="Watchtower 시작">
    HTTP API를 켜고 호스트에서만 접근할 수 있게 Watchtower를 시작합니다:

    ```bash theme={null}
    docker run -d --name watchtower \
      -v /var/run/docker.sock:/var/run/docker.sock \
      -p 127.0.0.1:8080:8080 \
      -e WATCHTOWER_HTTP_API_UPDATE=true \
      -e WATCHTOWER_HTTP_API_TOKEN=replace-with-a-long-random-token \
      -e WATCHTOWER_LABEL_ENABLE=true \
      nickfedor/watchtower
    ```
  </Step>

  <Step title="ipmideck 연결">
    `config.yaml`에 이미 있는 `updates:` 섹션에 Watchtower 주소와 토큰을 추가한 다음 ipmideck을 다시 시작합니다:

    ```yaml config.yaml theme={null}
    updates:
      watchtower_url: http://127.0.0.1:8080
      watchtower_token: replace-with-a-long-random-token
    ```

    같은 설정을 `IPMIDECK_UPDATES_WATCHTOWER_URL`과 `IPMIDECK_UPDATES_WATCHTOWER_TOKEN`으로도 지정할 수 있습니다. 두 컨테이너가 같은 네트워크를 쓰는 Docker Compose에서는 주소로 `http://watchtower:8080`을 사용하세요.
  </Step>
</Steps>

<Warning>
  Watchtower는 소켓을 통해 Docker를 제어합니다. 길고 무작위한 토큰을 사용하고, 예시처럼 포트를 `127.0.0.1`에 바인딩하세요.
</Warning>

<Note>
  Watchtower는 컨테이너가 이미 사용 중인 태그를 받아옵니다. `latest`이면 최신 릴리스로 이동하고, 버전 태그(예: `2.0.0`)에 고정된 컨테이너는 그대로 유지됩니다.
</Note>

## 설치에 실패한 경우

대화 상자에 원인과 설치 프로그램 출력, 그리고 수동 설치 명령이 표시됩니다. 아무것도 삭제되지 않습니다. 설치 전에 만든 백업은 `backups/`에 있으며, 복원 방법은 [백업 및 복원](/ko/backup-restore)에서 설명합니다.

## 다음 단계

* [ipmideck 업데이트](/ko/updating): 명령줄에서 업데이트합니다.
* [백업 및 복원](/ko/backup-restore): 업데이트 전에 데이터를 백업합니다.


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