Notice
Recent Posts
Recent Comments
반응형
오늘도 공부
Docker 기반 셀프호스팅 프로젝트 관리 도구 비교 가이드 본문
반응형
한눈에 비교
도구 추천 리소스주요 특징
| Plane | ⭐⭐⭐ | 중간 | Jira 대안, 모던 UI |
| Focalboard | ⭐⭐⭐ | 가벼움 | Notion 스타일, 빠름 |
| WeKan | ⭐⭐ | 매우 가벼움 | Trello 클론, 심플 |
| Leantime | ⭐⭐ | 중간 | 문서+PM 통합 |
| OpenProject | ⭐ | 무거움 | 엔터프라이즈급 |
1. Plane
Jira의 오픈소스 대안, 가장 모던한 UI
링크
- 공식 사이트: https://plane.so
- GitHub: https://github.com/makeplane/plane
- 문서: https://docs.plane.so
장점
- 깔끔하고 현대적인 UI/UX (Jira, Linear 수준)
- 이슈 트래킹, 칸반, 스프린트, 사이클 지원
- 문서(Pages) 기능 내장
- GitHub/GitLab 연동
- 활발한 개발 및 커뮤니티
단점
- 상대적으로 리소스 사용량 높음 (PostgreSQL, Redis, MinIO 필요)
- 초기 설정이 다소 복잡
- 일부 고급 기능은 Cloud 버전에서만 제공
Docker 설치 방법
# 1. 저장소 클론
git clone https://github.com/makeplane/plane.git
cd plane
# 2. 환경 설정
cp .env.example .env
# 3. 실행
docker compose up -d
# 접속: http://localhost:3000
최소 시스템 요구사항
- RAM: 4GB 이상
- Storage: 10GB 이상
2. Focalboard
Notion/Trello 대안, 가볍고 빠름
링크
- 공식 사이트: https://www.focalboard.com
- GitHub: https://github.com/mattermost/focalboard
- 문서: https://www.focalboard.com/docs
장점
- 매우 가벼움 (단일 바이너리)
- Notion 스타일의 데이터베이스 뷰
- 칸반, 테이블, 캘린더, 갤러리 뷰 지원
- Mattermost와 통합 가능
- 개인용으로 완전 무료
단점
- Mattermost 팀이 플러그인 형태로 전환 중 (standalone 지원 축소)
- 고급 협업 기능 제한적
- 알림 기능 부족
Docker 설치 방법
# 단일 컨테이너로 즉시 실행
docker run -d \
--name focalboard \
-p 8000:8000 \
-v focalboard-data:/opt/focalboard/data \
mattermost/focalboard
# 접속: http://localhost:8000
docker-compose.yml 예시
version: '3'
services:
focalboard:
image: mattermost/focalboard
container_name: focalboard
restart: unless-stopped
ports:
- "8000:8000"
volumes:
- focalboard-data:/opt/focalboard/data
volumes:
focalboard-data:
최소 시스템 요구사항
- RAM: 512MB
- Storage: 1GB
3. WeKan
Trello 클론, 초경량 칸반 보드
링크
- 공식 사이트: https://wekan.github.io
- GitHub: https://github.com/wekan/wekan
- 문서: https://github.com/wekan/wekan/wiki
장점
- Trello와 거의 동일한 사용법
- 매우 가벼움
- 체크리스트, 라벨, 마감일, 첨부파일 지원
- 다양한 언어 지원 (한국어 포함)
- 오랜 역사와 안정성
단점
- 칸반 보드만 지원 (리스트, 간트 없음)
- UI가 다소 구식
- 문서 기능 없음
Docker 설치 방법
# docker-compose.yml 생성 후 실행
docker compose up -d
# 접속: http://localhost:8080
docker-compose.yml 예시
version: '3'
services:
wekan:
image: wekanteam/wekan:latest
container_name: wekan
restart: unless-stopped
ports:
- "8080:8080"
environment:
- MONGO_URL=mongodb://wekandb:27017/wekan
- ROOT_URL=http://localhost:8080
depends_on:
- wekandb
wekandb:
image: mongo:6
container_name: wekan-db
restart: unless-stopped
volumes:
- wekan-db:/data/db
volumes:
wekan-db:
최소 시스템 요구사항
- RAM: 1GB
- Storage: 2GB
4. Leantime
PM + 문서 + 타임트래킹 통합 솔루션
링크
- 공식 사이트: https://leantime.io
- GitHub: https://github.com/Leantime/leantime
- 문서: https://docs.leantime.io
장점
- 프로젝트 관리 + 문서 + 시간 추적 올인원
- 마일스톤, 칸반, 타임라인 뷰 지원
- 목표(OKR) 관리 기능
- 직관적인 UI
- 중소 팀에 적합
단점
- 대규모 팀에는 기능 부족
- 일부 기능은 유료 버전에서만 제공
- GitHub 연동 제한적
Docker 설치 방법
# docker-compose.yml 생성 후 실행
docker compose up -d
# 접속: http://localhost:8080
# 초기 설정 마법사 실행됨
docker-compose.yml 예시
version: '3'
services:
leantime:
image: leantime/leantime:latest
container_name: leantime
restart: unless-stopped
ports:
- "8080:80"
environment:
LEAN_DB_HOST: mysql
LEAN_DB_USER: lean
LEAN_DB_PASSWORD: lean
LEAN_DB_DATABASE: leantime
depends_on:
- mysql
mysql:
image: mysql:8.0
container_name: leantime-db
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: leantime
MYSQL_USER: lean
MYSQL_PASSWORD: lean
volumes:
- leantime-db:/var/lib/mysql
volumes:
leantime-db:
최소 시스템 요구사항
- RAM: 1GB
- Storage: 2GB
5. OpenProject
엔터프라이즈급 풀기능 프로젝트 관리
링크
- 공식 사이트: https://www.openproject.org
- GitHub: https://github.com/opf/openproject
- 문서: https://www.openproject.org/docs
장점
- 가장 완전한 기능 세트
- 간트 차트, 애자일 보드, 타임라인
- 워크 패키지, 비용 관리, 시간 추적
- 위키, 문서, 미팅 관리
- 엔터프라이즈 지원
단점
- 리소스 사용량 높음 (RAM 4GB+ 권장)
- 초기 설정 복잡
- UI가 다소 복잡하고 학습 곡선 있음
- 일부 기능은 Enterprise 버전에서만 제공
Docker 설치 방법
# 올인원 컨테이너로 빠르게 시작
docker run -d \
--name openproject \
-p 8080:80 \
-e OPENPROJECT_SECRET_KEY_BASE=secret \
-e OPENPROJECT_HOST__NAME=localhost:8080 \
-e OPENPROJECT_HTTPS=false \
-v openproject-pgdata:/var/openproject/pgdata \
-v openproject-assets:/var/openproject/assets \
openproject/openproject:14
# 접속: http://localhost:8080
# 초기 계정: admin / admin
docker-compose.yml 예시
version: '3'
services:
openproject:
image: openproject/openproject:14
container_name: openproject
restart: unless-stopped
ports:
- "8080:80"
environment:
OPENPROJECT_SECRET_KEY_BASE: your-secret-key-here
OPENPROJECT_HOST__NAME: localhost:8080
OPENPROJECT_HTTPS: "false"
volumes:
- openproject-pgdata:/var/openproject/pgdata
- openproject-assets:/var/openproject/assets
volumes:
openproject-pgdata:
openproject-assets:
최소 시스템 요구사항
- RAM: 4GB 이상
- Storage: 10GB 이상
용도별 추천
개발팀 (이슈 트래킹 중심)
- Plane - Jira 대안으로 가장 적합
- Focalboard - 가볍게 시작하고 싶다면
소규모 팀 / 개인
- Focalboard - 빠르고 간단
- WeKan - 칸반만 필요하다면
문서 + PM 통합
- Leantime - 올인원 솔루션
- Plane - Pages 기능 활용
엔터프라이즈 / 복잡한 프로젝트
- OpenProject - 모든 기능 필요시
현재 프로젝트에 통합하기
기존 docker-compose.yml에 원하는 도구를 추가할 수 있습니다:
# 기존 scholarly 서비스들...
# 예: Focalboard 추가
focalboard:
image: mattermost/focalboard
container_name: scholarly-pm
restart: unless-stopped
ports:
- "8103:8000"
volumes:
- focalboard-data:/opt/focalboard/data
networks:
- scholarly-network
volumes:
focalboard-data:
참고 자료
반응형
'개발상식' 카테고리의 다른 글
| Linux 파일 권한(File Permissions) 완벽 가이드 (0) | 2025.11.17 |
|---|---|
| SEO 용어 완벽 가이드 (0) | 2025.11.13 |
| 좋은 Git 커밋 메시지 작성법 (0) | 2025.11.12 |
| README 파일 작성 완벽 가이드 - 실전 예제와 함께 (0) | 2025.11.12 |
| 리눅스 필수 명령어 완벽 가이드 📚 (0) | 2025.11.03 |
