大大小小 ACTIVITIES

대대소소의 소식을 전합니다.

ABOUT US

블로거 대대소소가 운영하는 블로그입니다. 다양한 정보와 인사이트를 공유합니다.

INNOVATION

최신 기술과 트렌드를 통해 혁신적인 컨텐츠를 제공합니다.

CONTENT

유용하고 흥미로운 컨텐츠를 지속적으로 업데이트합니다.

Synology NAS에 JIRA + PostgreSQL 설치 완벽 가이드

📋 목차

  1. 사전 준비
  2. SSH 활성화 및 접속
  3. 기존 JIRA 확인 및 정리
  4. Docker Compose로 설치
  5. JIRA Setup Wizard
  6. 추가 설정

1단계: 사전 준비

필요한 것

  • Synology NAS (DSM 7.0 이상)
  • Container Manager 패키지 설치
  • 최소 4GB RAM 권장
  • 충분한 저장 공간 (최소 10GB)

Container Manager 설치

  1. Package Center 열기
  2. Container Manager 검색
  3. 설치 클릭
  4. 설치 완료 대기

2단계: SSH 활성화 및 접속

2-1. Synology에서 SSH 활성화

  1. 웹 브라우저로 Synology 접속
    • http://192.168.0.96:5000 (IP는 본인 환경에 맞게)
  2. 관리자 계정으로 로그인
  3. 제어판터미널 및 SNMP 클릭
  4. 터미널 탭에서:
    • SSH 서비스 활성화 체크
    • 포트: 22 (기본값)
  5. 적용 클릭

2-2. Synology IP 주소 확인

  1. 제어판네트워크네트워크 인터페이스
  2. LAN 또는 LAN 포트 2 더블클릭
  3. IPv4 주소 확인 (예: 192.168.0.96)
  4. 메모장에 기록

2-3. SSH 접속

Windows 사용자:

방법 A: 명령 프롬프트

bash

# 시작 메뉴 → "cmd" 검색 → 명령 프롬프트 실행
ssh 계정명@IP주소

# 예시:
ssh dedesoso@192.168.0.96

방법 B: PuTTY (더 쉬움)

  1. PuTTY 다운로드: https://www.putty.org/
  2. PuTTY 실행
  3. Host Name: 192.168.0.96
  4. Port: 22
  5. Connection type: SSH
  6. Open 클릭
  7. 계정명 입력 → Enter
  8. 비밀번호 입력 → Enter (화면에 안 보임)

2-4. 관리자 권한 전환

bash

sudo -i
# 비밀번호 입력 (화면에 안 보임)

프롬프트가 root@시놀로지이름:~#로 바뀌면 성공


3단계: 기존 JIRA 확인 및 정리

3-1. 기존 컨테이너 확인

bash

docker ps -a | grep jira

3-2. 기존 JIRA 정지 및 삭제

bash

docker stop jira
docker rm jira

3-3. 기존 데이터 삭제 (선택사항)

⚠️ 주의: 기존 JIRA 데이터가 완전히 삭제됩니다!

bash

rm -rf /volume1/docker/jira/*

4단계: Docker Compose로 설치

4-1. 프로젝트 폴더 생성

bash

cd /volume1/docker
mkdir -p jira-project
cd jira-project

4-2. Docker Compose 파일 생성

bash

cat > docker-compose.yml << 'EOF'
version: '3.8'

services:
  postgres:
    image: postgres:15
    container_name: jira-postgres
    restart: unless-stopped
    environment:
      POSTGRES_DB: jiradb
      POSTGRES_USER: jiradbuser
      POSTGRES_PASSWORD: 강력한비밀번호입력
      POSTGRES_ENCODING: UTF8
      POSTGRES_LOCALE: C
      POSTGRES_COLLATE: C
      POSTGRES_CTYPE: C
    command:
      - "postgres"
      - "-c"
      - "max_connections=200"
      - "-c"
      - "shared_buffers=256MB"
      - "-c"
      - "effective_cache_size=1GB"
    volumes:
      - ./postgres-data:/var/lib/postgresql/data
    ports:
      - "5433:5432"
    networks:
      - jira-network
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U jiradbuser -d jiradb"]
      interval: 10s
      timeout: 5s
      retries: 5

  jira:
    image: atlassian/jira-software:latest
    container_name: jira-app
    restart: unless-stopped
    depends_on:
      postgres:
        condition: service_healthy
    environment:
      ATL_JDBC_URL: jdbc:postgresql://postgres:5432/jiradb
      ATL_JDBC_USER: jiradbuser
      ATL_JDBC_PASSWORD: 강력한비밀번호입력
      ATL_DB_DRIVER: org.postgresql.Driver
      ATL_DB_TYPE: postgres72
      JVM_MINIMUM_MEMORY: 2048m
      JVM_MAXIMUM_MEMORY: 4096m
    volumes:
      - ./jira-data:/var/atlassian/application-data/jira
    ports:
      - "8080:8080"
    networks:
      - jira-network

networks:
  jira-network:
    driver: bridge
EOF

⚠️ 중요: 강력한비밀번호입력 부분을 실제 비밀번호로 변경하세요!

4-3. 필요한 폴더 생성

bash

mkdir -p postgres-data jira-data

4-4. 컨테이너 실행

bash

docker-compose up -d

실행 메시지:

Creating network "jira-project_jira-network" ... done
Creating jira-postgres ... done
Creating jira-app      ... done

4-5. 상태 확인

bash

docker-compose ps

두 컨테이너가 모두 "Up" 상태여야 합니다.

4-6. 로그 확인 (선택사항)

bash

docker-compose logs -f jira

JIRA 시작 과정을 볼 수 있습니다. 종료하려면 Ctrl+C

⏱️ 대기 시간: JIRA 첫 시작은 10-15분 정도 걸립니다.


5단계: JIRA Setup Wizard

5-1. 웹 브라우저 접속

http://192.168.0.96:8080

5-2. 애플리케이션 속성 설정

화면 표시:

  • Application Title: Jira (또는 원하는 이름)
  • Mode: Private 선택 (관리자만 사용자 생성 가능)
  • Base URL: http://192.168.0.96:8080

Next 클릭

5-3. 라이선스 키 입력

평가판 라이선스 생성:

  1. "generate a Jira trial license at MyAtlassian" 링크 클릭
  2. Atlassian 계정으로 로그인 (없으면 가입)
  3. Server ID 자동 입력됨 (예: BJFT-XVQR-JMAP-GX5F)
  4. Organization 정보 입력
  5. 라이선스 키 생성됨 (즉시 발급)
  6. 라이선스 키를 복사
  7. JIRA Setup Wizard로 돌아와서 붙여넣기
  8. Next 클릭

5-4. 데이터베이스 설정

중요 단계입니다!

  1. "My Own Database" 선택
  2. 다음 정보 입력:
항목
Database Type PostgreSQL
Hostname postgres
Port 5432
Database jiradb
Username jiradbuser
Password docker-compose.yml에 입력한 비밀번호
Schema public
  1. Test Connection 클릭
    • ✅ 성공 메시지 확인
  2. Next 클릭

5-5. 관리자 계정 생성

다음 정보 입력:

항목 설명
Full name 본인 이름 (예: "홍길동")
Email Address 본인 이메일
Username 로그인 ID (예: "admin")
Password 강력한 비밀번호
Confirm Password 비밀번호 재입력

Next 클릭

5-6. 이메일 알림 설정

"Later" 선택 (나중에 설정 가능)

Finish 클릭

5-7. 설치 완료

🎉 축하합니다! JIRA 대시보드로 이동됩니다.


6단계: 추가 설정

6-1. 이메일 서버 설정 (선택사항)

  1. 우측 상단 톱니바퀴System
  2. Outgoing Mail 클릭
  3. SMTP 서버 정보 입력:
    • Gmail 예시:
      • Server Name: smtp.gmail.com
      • Port: 587
      • Username: 본인 Gmail
      • Password: 앱 비밀번호
      • TLS: 활성화

6-2. 로고 변경

  1. 우측 상단 톱니바퀴System
  2. Look and feel 클릭
  3. Site logo 섹션에서:
    • Upload logo 클릭
    • 이미지 파일 선택 (권장: 200×60px)
  4. Update 클릭

6-3. 첫 프로젝트 생성

  1. ProjectsCreate project
  2. 템플릿 선택 (예: Scrum, Kanban)
  3. 프로젝트 이름 입력
  4. Create 클릭

🔧 문제 해결

포트 충돌 발생 시

에러: bind: address already in use

해결:

bash

# 어떤 프로세스가 포트 사용 중인지 확인
netstat -tulpn | grep 8080
netstat -tulpn | grep 5432

# docker-compose.yml에서 포트 변경
# 예: 8080:8080 → 8081:8080

JIRA가 시작 안 될 때

bash

# 로그 확인
docker-compose logs -f jira

# 컨테이너 재시작
docker-compose restart

# 완전 재설치
docker-compose down
docker-compose up -d

메모리 부족

bash

# docker-compose.yml 수정
JVM_MINIMUM_MEMORY: 1024m  # 2048m → 1024m로 감소
JVM_MAXIMUM_MEMORY: 2048m  # 4096m → 2048m로 감소

📚 유용한 명령어 모음

컨테이너 관리

bash

# 프로젝트 폴더로 이동
cd /volume1/docker/jira-project

# 시작
docker-compose start

# 정지
docker-compose stop

# 재시작
docker-compose restart

# 상태 확인
docker-compose ps

# 로그 보기
docker-compose logs -f

# 완전 삭제 (데이터 유지)
docker-compose down

# 완전 삭제 (데이터도 삭제)
docker-compose down -v
rm -rf postgres-data jira-data

PostgreSQL 직접 접속

bash

docker exec -it jira-postgres psql -U jiradbuser -d jiradb

✅ 체크리스트

설치 완료 확인:

  • SSH 접속 성공
  • Docker Compose 파일 생성
  • 컨테이너 2개 모두 "Up" 상태
  • 웹 브라우저에서 JIRA 접속됨
  • 데이터베이스 연결 테스트 성공
  • 관리자 계정 로그인 가능
  • 첫 프로젝트 생성 성공

📖 참고 정보

접속 정보

  • JIRA URL: http://192.168.0.96:8080
  • PostgreSQL 포트: 5433 (외부) / 5432 (내부)
  • 데이터 위치: /volume1/docker/jira-project/

백업 권장

bash

# 데이터 폴더 백업
cd /volume1/docker/jira-project
tar -czf jira-backup-$(date +%Y%m%d).tar.gz postgres-data jira-data

라이선스 정보

  • 평가판: 30일 무료
  • 이후: 정식 구매 필요 (10명 기준 $10/월부터)

🎯 다음 단계

  1. 팀원 초대: 사용자 관리에서 팀원 추가
  2. 프로젝트 설정: 워크플로우, 이슈 타입 커스터마이징
  3. 통합 설정: Slack, GitHub, Confluence 등 연동
  4. 백업 자동화: 정기 백업 스크립트 설정

이제 JIRA를 사용할 준비가 완료되었습니다! 🎉