← 블로그 목록

OCI Free Tier로 운영 서버 구축하기

Oracle Cloud의 평생 무료 ARM 인스턴스로 Spring Boot 서버를 구축하고 운영한 경험을 공유합니다.

OCIOracle Cloud인프라

OCI Free Tier의 가치

Oracle Cloud Infrastructure는 ARM 기반 Ampere A1 인스턴스를 월 3,000 OCPU-시간, 18GB RAM까지 무료로 제공합니다. 이건 4 OCPU / 24GB RAM 인스턴스를 하나 만들 수 있다는 의미입니다.

서버 구성

- **OS**: Oracle Linux 8 (ARM)

- **Java**: OpenJDK 17 (aarch64)

- **WAS**: Spring Boot 내장 Tomcat

- **DB**: Oracle Autonomous Database (Always Free)

- **프록시**: Nginx (SSL 종료 + 리버스 프록시)

배포 파이프라인

Jenkins를 같은 인스턴스에 설치하고, GitHub Webhook으로 push 이벤트를 수신합니다.

GitHub Push → Jenkins Build → JAR 교체 → systemd restart

네트워크 설정 주의점

OCI는 기본적으로 모든 인바운드 포트를 차단합니다. Security List와 OS 방화벽(firewalld) 두 곳 모두 열어야 합니다.

sudo firewall-cmd --permanent --add-port=443/tcp
sudo firewall-cmd --reload

Wallet 기반 DB 접속

Oracle Autonomous DB는 Wallet(mTLS)으로만 접속합니다. Spring Boot의 application.yml:

spring:
  datasource:
    url: "jdbc:oracle:thin:@serviceName?TNS_ADMIN=/opt/wallet"

결론

월 비용 0원으로 운영 가능한 풀스택 서버. 개인 프로젝트나 소규모 서비스에 최적입니다.