---
title: 구성
description: Human Plugin을 실행하기 위해 설정하는 환경 변수입니다. 액세스 키와 PostgreSQL 데이터베이스 연결 정보를 다룹니다.
canonical: https://developer.unico.io/ko/human-plugin/self-hosting/configuration
locale: ko
generated_by: markdown-export
---

# 구성

액세스 키와 데이터베이스 연결 정보입니다. 값이 없거나 올바르지 않으면 시작이 중단됩니다.

Human Plugin은 시작할 때 한 번만 환경에서 구성을 읽습니다. 값을 변경하려면 컨테이너를 다시 시작해야 합니다.

## 빠른 참조

아래 기본값을 사용하는 데이터베이스를 위한 최소 `.env`입니다.

```bash title=".env"
HUMAN_API_ACCESS_KEY=<your access key>
POSTGRES_ADDRESS_HOST=<database host>
POSTGRES_PASSWORD=<database password>
```

## 액세스 키

| 변수 | 필수 | 참고 |
| --- | --- | --- |
| `HUMAN_API_ACCESS_KEY` | 예 | 액세스 키입니다. 설치를 Unico에 연결하고 계정을 식별합니다. 공백이나 제어 문자는 사용할 수 없습니다. 로그에 기록되지 않습니다 |

액세스 키는 비밀 값입니다. 시크릿 저장소에 보관하고 런타임에 컨테이너에 주입하세요.

<a id="database-connection"></a>

## 데이터베이스 연결

| 변수 | 필수 | 기본값 | 참고 |
| --- | --- | --- | --- |
| `POSTGRES_ADDRESS_HOST` | 예 | | PostgreSQL 서버의 호스트 이름 또는 IP 주소 |
| `POSTGRES_PASSWORD` | 예 | | 공백, 작은따옴표, 백슬래시, 제어 문자는 사용할 수 없습니다. 이런 문자가 있으면 Human Plugin은 값을 로그에 기록하지 않고 시작을 거부합니다 |
| `POSTGRES_ADDRESS_PORT` | 아니요 | `5432` | |
| `POSTGRES_USER` | 아니요 | `postgres` | Human Plugin 전용 역할(role)을 사용하세요 |
| `POSTGRES_DATABASE` | 아니요 | `human_plugin` | Human Plugin 전용 데이터베이스를 사용하세요 |
| `POSTGRES_SSL_MODE` | 아니요 | `require` | PostgreSQL이 같은 호스트에서 실행되거나 사이드카로 실행될 때만 `disable`을 사용하세요 |

데이터베이스는 Human Plugin만 사용해야 합니다. 역할에는 테이블을 생성할 권한이 필요합니다. Human Plugin은 요청을 받기 전에 시작 시점에 자체 테이블을 생성하고 업데이트합니다.

비밀번호는 비밀 값입니다. 액세스 키와 마찬가지로 시크릿 저장소에 보관하세요.

## 그 외 모든 값

이미지가 그 외 모든 값을 설정합니다. Unico가 요청하지 않는 한 다른 변수를 설정하지 마세요. 지원되는 구성에 포함되지 않습니다.

## 예시

```bash
docker run -d --name human-plugin --stop-timeout 60 -p 127.0.0.1:8080:8080 \
  -e HUMAN_API_ACCESS_KEY \
  -e POSTGRES_ADDRESS_HOST=db.internal \
  -e POSTGRES_USER=human_plugin \
  -e POSTGRES_PASSWORD \
  pkg.unico.run/human-plugin-api:latest
```

값 없이 `-e NAME`을 쓰면 셸의 변수를 그대로 전달하므로 비밀 값이 명령줄에 나타나지 않습니다.