2. 설치 및 실행#
2.1 사전 준비#
DataAPI를 실행하기 전에 다음 항목을 준비해야 한다.
- DataAPI에서 사용할 DB 사용자 계정
- JWT 토큰 서명에 사용할 비밀 키
- DataAPI에서 사용할 Altibase Role
Altibase Role 생성 및 권한 부여 방법은 3. DB Role과 권한 준비를 참고 한다.
설치 모듈#
설치 모듈은 Altibase 서버 버전에 따라 다음 형식의 파일명으로 제공된다. 사용 중인 Altibase 서버 버전에 맞는 jar 파일을 선택하여 사용해야 한다.
data-api-<version>-altibase7.jar
data-api-<version>-altibase8.jar
Note
Altibase 7.1 버전의 경우, JDBC 4.0 이상을 지원하는 7.1.0.5.6 이상부터 지원한다. Altibase 6.5 버전 및 Altibase 7.1.0.5.5 이하 버전은 지원하지 않는다.
2.2 환경변수#
필수 환경변수#
DataAPI 실행에 필요한 필수 환경변수는 아래와 같다.
| 환경변수 | 기본값 | 설명 |
|---|---|---|
| DATAAPI_ALTIBASE_HOST | 127.0.0.1 | Altibase 접속 호스트 |
| DATAAPI_ALTIBASE_PORT | 20300 | Altibase 접속 포트 |
| DATAAPI_DBNAME | mydb | Altibase 데이터베이스 이름 |
| JWT_SECRET | 필수 | JWT 서명을 위한 비밀 키 (256비트 이상으로 설정) |
JWT Secret 키 생성 명령어
- Linux / macOS (Bash)
openssl rand -base64 32 - Windows (PowerShell)
[Convert]::ToBase64String((1..32 | % { [byte](Get-Random -Max 256) }))
선택적 환경변수#
SERVER_PORT와 SERVER_SERVLET_CONTEXT_PATH는 Spring Boot에서 제공하는 표준 환경변수이며, 각각 HTTP 포트와 Context Path를 변경하는 데 사용한다.
Swagger UI 및 OpenAPI를 사용하려면 SWAGGER_ENABLED 와 API_DOCS_ENABLED를 true로 설정해야 한다.
| 환경변수 | 기본값 | 설명 |
|---|---|---|
| SERVER_PORT | 8080 | HTTP 포트 |
| SERVER_SERVLET_CONTEXT_PATH | /dataapi | Context Path |
| SWAGGER_ENABLED | false | Swagger UI 활성화 |
| API_DOCS_ENABLED | false | OpenAPI JSON 활성화 |
Swagger UI와 OpenAPI를 활성화하면 기본 경로는 아래와 같다.
- Swagger UI: http://localhost:8080/dataapi/swagger-ui.html
- OpenAPI JSON: http://localhost:8080/dataapi/v3/api-docs
2.3 DataAPI 실행#
환경변수를 설정한 다음, java -jar 명령어로 DataAPI를 실행한다.
실행 예시#
PowerShell:
## 필수 설정
$env:DATAAPI_ALTIBASE_HOST="127.0.0.1"
$env:DATAAPI_ALTIBASE_PORT="20300"
$env:DATAAPI_DBNAME="mydb"
# JWT 토큰 서명에 사용하는 비밀 키
# 예제 값은 테스트용이다. 운영 환경에서는 256비트(32바이트) 이상의 안전한 임의 문자열로 변경하여 사용한다.
$env:JWT_SECRET="01234567890123456789012345678901"
## 선택 설정
$env:SWAGGER_ENABLED="true"
$env:API_DOCS_ENABLED="true"
## 실행
java -jar data-api-<version>-altibase8.jar
Bash:
## 필수 설정
export DATAAPI_ALTIBASE_HOST=127.0.0.1
export DATAAPI_ALTIBASE_PORT=20300
export DATAAPI_DBNAME=mydb
# JWT 토큰 서명에 사용하는 비밀 키
# 예제 값은 테스트용이다. 운영 환경에서는 256비트(32바이트) 이상의 안전한 임의 문자열로 변경하여 사용한다.
export JWT_SECRET=01234567890123456789012345678901
## 선택 설정
export SWAGGER_ENABLED=true
export API_DOCS_ENABLED=true
## 실행
java -jar data-api-<version>-altibase8.jar