프로젝트 개요 및 주요 기술 스택
Go-FastDFS는 고성능과 높은 신뢰성을 갖춘 분산 파일 저장 시스템으로, 파일 업로드의 지속성, 파편화된 전송, 소형 파일 통합, 자동 동기화 및 복구 기능을 제공합니다. 이에 기반한 Go-FastDFS 웹 관리 플랫폼은 사용자가 시각적 인터페이스를 통해 파일 시스템을 쉽게 제어하고 상태를 모니터링할 수 있도록 지원합니다.
본 프로젝트는 Java 언어로 작성되었으며, Spring Boot 프레임워크를 중심으로 구성되어 있습니다.
사용된 주요 기술 및 프레임워크
- Spring Boot: 독립 실행 가능한 프로덕션급 애플리케이션을 신속하게 구축하기 위한 프레임워크입니다.
- MyBatis-Plus: MyBatis를 확장하여 데이터베이스 작업을 보다 간편하게 처리합니다.
- Apache Shiro: 인증, 권한 부여, 세션 관리 등 보안 관련 기능을 통합적으로 제공하는 Java 기반 보안 프레임워크입니다.
- SQLite: 경량 내장형 데이터베이스로, 설정 정보와 기본 데이터 저장에 활용됩니다.
설치 준비 및 절차
필수 조건
설치를 시작하기 전 다음 환경이 필요합니다:
- JDK 8 이상
- Git 클라이언트
- Maven 빌드 도구
설치 과정
1. 소스 코드 다운로드
git clone https://github.com/perfree/go-fastdfs-web.git
2. 프로젝트 빌드
cd go-fastdfs-web
mvn clean install
빌드가 완료되면 target 디렉터리에 실행 가능한 JAR 파일이 생성됩니다.
3. 설정 파일 수정
config/application.yml 파일에서 서버 포트나 기타 옵션을 조정할 수 있습니다.
server:
port: 8090
만약 FastDFS 서버가 그룹 단위로 운영 중이라면 해당 그룹명도 함께 설정해야 합니다.
4. 애플리케이션 실행
java -jar target/go-fastdfs-web.jar
기본적으로 http://localhost:8090에서 웹 관리자 페이지에 접속할 수 있습니다.
Docker를 이용한 배포 (선택 사항)
컨테이너 환경에서 실행하려면 아래 명령어를 사용하세요:
docker run --name fastdfs-manager -d -p 8090:8090 perfree/fastdfsweb
자주 발생하는 문제 해결
- 데이터 조회 불가: FastDFS 서버 설정에서 접근 가능한 IP 대역(whitelist)을 확인해주세요.
- 파일 목록 표시 오류: FastDFS 서비스 버전이
v1.2.8이상인지 확인하세요.