HS Lab운영 콘솔

Ops

서버 / 배포 노트

Oracle 서버에서 실제 수행한 Docker, DB, NPM, HTTPS 작업을 운영 기록으로 남깁니다.

DEPLOYhs-lab2026. 6. 20.

HS Lab v1 운영 기반 통합

DB 기반 AdminUser 인증, 관리자 기록 관리 페이지, Agent 작업 지침, 배포/백업 문서를 통합했다.

npm run lint
npm run build
docker compose build hs-lab-web
docker compose up -d --no-deps hs-lab-web

변경 파일: AGENTS.md, CONTRIBUTING.md, docs/*, app/admin/*, prisma/schema.prisma, scripts/create-admin.ts, README.md

다음 점검: GitHub remote 연결 후 v1 커밋과 태그를 생성한다.

SSLnginx-proxy-manager2026. 6. 20.

NPM 프록시와 HTTPS 인증서 연결

hslab.sellibearr.cloud을 NPM proxy host로 연결하고 Let’s Encrypt 인증서를 적용했다.

NPM API proxy host create → hs-lab-web:3000
openssl s_client -servername hslab.sellibearr.cloud -connect hslab.sellibearr.cloud:443

변경 파일: NPM generated proxy_host/13.conf

발생 문제: 수동 DB/conf 조작 후 SSL/SNI에서 tlsv1 unrecognized name 문제가 발생할 수 있는 상태였다.

해결 과정: NPM API로 기존 hslab proxy host를 삭제 후 재생성하고 certificate_id 17을 연결해 SNI와 generated config를 정합 상태로 맞췄다.

다음 점검: 향후 NPM 변경은 UI/API를 우선 사용하고 수동 DB 수정은 백업 후 최후 수단으로만 사용한다.

DATABASEhs-lab-postgres2026. 6. 20.

HS Lab PostgreSQL 컨테이너 생성

기존 PostgreSQL 볼륨을 건드리지 않고 HS Lab 전용 PostgreSQL 16 컨테이너와 전용 볼륨을 구성했다.

docker compose up -d hs-lab-postgres
docker compose exec hs-lab-web npx prisma db push
docker compose exec hs-lab-web npm run seed

변경 파일: prisma/schema.prisma, prisma/seed.ts, docker-compose.yml

다음 점검: 백업/복구 절차와 마이그레이션 전략을 문서화한다.

DEPLOYhs-lab2026. 6. 20.

HS Lab v0.1 외부 HTTPS 배포

HS Lab v0.1을 Docker Compose로 실행하고 Nginx Proxy Manager를 통해 외부 HTTPS 접속을 확인했다.

docker compose up -d --build
docker compose ps
curl -I https://hslab.sellibearr.cloud/

변경 파일: docker-compose.yml, docker/Dockerfile, .env, prisma/schema.prisma

다음 점검: 운영 가능한 admin/write 영역과 초기화 기능을 추가한다.

DOCKERhs-lab2026. 6. 19.

HS Lab 프로젝트 초기 구성

Next.js, Prisma, PostgreSQL, Docker Compose 기반의 개인 개발 실험실 MVP를 구성했다.

npx create-next-app, npm install @prisma/client prisma tsx, docker compose up -d --build

변경 파일: docker-compose.yml, docker/Dockerfile, prisma/schema.prisma, app/*, data/*

다음 점검: DNS 전파 후 NPM Proxy Host와 Let's Encrypt 인증서를 연결한다.