158 lines
7.8 KiB
Markdown
158 lines
7.8 KiB
Markdown
# Fess: 엔터프라이즈 검색 서버
|
|
[](https://github.com/codelibs/fess/actions/workflows/maven.yml)
|
|
[](https://maven-badges.herokuapp.com/maven-central/org.codelibs.fess/fess)
|
|
[](https://github.com/gitbucket/gitbucket/blob/master/LICENSE)
|
|
|
|
## 개요
|
|
|
|
Fess는 매우 강력하고 쉽게 배포 가능한 엔터프라이즈 검색 서버입니다. 자바 런타임 환경(Java Runtime Environment)을 실행할 수 있는 모든 플랫폼에서 Fess를 빠르게 설치하고 실행할 수 있습니다. Fess는 [Apache License 2.0](LICENSE)에 따라 제공됩니다.
|
|
|
|
Fess는 [OpenSearch](https://github.com/opensearch-project/OpenSearch)를 기반으로 하지만, OpenSearch에 대한 지식이나 경험은 필요하지 않습니다. Fess는 브라우저를 통해 시스템을 구성할 수 있는 사용하기 쉬운 관리 GUI를 제공합니다. 또한 Fess는 [웹 서버](https://fess.codelibs.org/14.17/admin/webconfig-guide.html), [파일 시스템](https://fess.codelibs.org/14.17/admin/fileconfig-guide.html), 또는 [데이터 저장소](https://fess.codelibs.org/14.17/admin/dataconfig-guide.html)에서 문서를 크롤링할 수 있는 크롤러도 포함하고 있습니다(CSV 또는 데이터베이스와 같은). Microsoft Office, PDF, zip을 포함한 다양한 파일 형식을 지원합니다.
|
|
|
|
*[Fess 사이트 검색](https://github.com/codelibs/fess-site-search)*은 [Google 사이트 검색](https://enterprise.google.com/search/products/gss.html)의 무료 대안입니다. 자세한 내용은 [FSS JS 생성기 문서](https://fss-generator.codelibs.org/docs/manual)를 참조하십시오.
|
|
|
|
## 웹사이트
|
|
|
|
[fess.codelibs.org](https://fess.codelibs.org/)
|
|
|
|
## 문제/질문
|
|
|
|
[discuss.codelibs.org](https://discuss.codelibs.org/c/FessEN/)
|
|
|
|
## 시작하기
|
|
|
|
Fess를 사용해보는 방법은 두 가지가 있습니다. 첫 번째는 직접 다운로드하여 설치하는 방법이며, 두 번째는 [Docker](https://www.docker.com/products/docker-engine)를 사용하는 방법입니다.
|
|
|
|
### 다운로드 및 설치/실행
|
|
|
|
Fess 14.17이 현재 사용 가능하며, [릴리스 페이지](https://github.com/codelibs/fess/releases "download")에서 다운로드할 수 있습니다. 다운로드는 deb, rpm, zip의 세 가지 형식으로 제공됩니다.
|
|
|
|
다음 명령은 zip 다운로드 사용 방법을 보여줍니다:
|
|
|
|
$ unzip fess-14.17.x.zip
|
|
$ cd fess-14.17.x
|
|
$ ./bin/fess
|
|
|
|
자세한 내용은 [설치 가이드](https://fess.codelibs.org/14.17/install/index.html)를 참조하십시오.
|
|
|
|
### Docker
|
|
|
|
우리는 [ghcr.io](https://github.com/orgs/codelibs/packages)에서 Docker 이미지를 제공합니다. 또한 [이 리포지토리](https://github.com/codelibs/docker-fess/tree/master/compose)에 Docker Compose (YAML) 파일도 제공합니다.
|
|
|
|
### 브라우저 UI
|
|
|
|
- 검색 UI: http://localhost:8080/
|
|
|
|

|
|
|
|
- 관리자 UI: http://localhost:8080/admin/ (기본 사용자 이름/비밀번호는 admin/admin입니다)
|
|
|
|

|
|
|
|
관리자 UI에서는 (웹, 파일, 데이터 저장소) 크롤러 구성 페이지에서 크롤링 대상을 등록한 다음, [스케줄러 페이지](https://fess.codelibs.org/14.17/admin/scheduler-guide.html)에서 크롤러를 수동으로 시작할 수 있습니다.
|
|
|
|
## 다른 검색 제공자에서의 마이그레이션
|
|
|
|
[MIGRATION.md](MIGRATION.md)를 참조하십시오.
|
|
|
|
## 데이터 저장소
|
|
|
|
현재 Fess는 다음 [저장소 위치 및 API](https://fess.codelibs.org/14.17/admin/dataconfig-guide.html)를 크롤링할 수 있습니다:
|
|
|
|
- [Confluence/Jira](https://github.com/codelibs/fess-ds-atlassian)
|
|
- [Box](https://github.com/codelibs/fess-ds-box)
|
|
- [CSV](https://github.com/codelibs/fess-ds-csv)
|
|
- [Database](https://github.com/codelibs/fess-ds-db)
|
|
- [Dropbox](https://github.com/codelibs/fess-ds-dropbox)
|
|
- [Elasticsearch](https://github.com/codelibs/fess-ds-elasticsearch)
|
|
- [Git](https://github.com/codelibs/fess-ds-git)
|
|
- [Gitbucket](https://github.com/codelibs/fess-ds-gitbucket)
|
|
- [G Suite](https://github.com/codelibs/fess-ds-gsuite)
|
|
- [JSON](https://github.com/codelibs/fess-ds-json)
|
|
- [Office 365](https://github.com/codelibs/fess-ds-office365)
|
|
- [S3](https://github.com/codelibs/fess-ds-s3)
|
|
- [Salesforce](https://github.com/codelibs/fess-ds-salesforce)
|
|
- [SharePoint](https://github.com/codelibs/fess-ds-sharepoint)
|
|
- [Slack](https://github.com/codelibs/fess-ds-slack)
|
|
|
|
## 테마
|
|
|
|
- [Simple](https://github.com/codelibs/fess-theme-simple)
|
|
- [Classic](https://github.com/codelibs/fess-theme-classic)
|
|
|
|
## 인게스트
|
|
|
|
- [Logger](https://github.com/codelibs/fess-ingest-logger)
|
|
- [NDJSON](https://github.com/codelibs/fess-ingest-ndjson)
|
|
|
|
## 스크립트
|
|
|
|
- [Groovy](https://github.com/codelibs/fess-script-groovy)
|
|
- [OGNL](https://github.com/codelibs/fess-script-ognl)
|
|
|
|
## 개발 정보
|
|
|
|
### 소스 코드 얻기
|
|
|
|
1. Fess 리포지토리를 클론합니다:
|
|
```
|
|
$ cd ~/workspace
|
|
$ git clone https://github.com/codelibs/fess.git
|
|
```
|
|
|
|
2. 클론한 리포지토리를 [Maven](https://maven.apache.org/) 프로젝트로 [Eclipse](https://www.eclipse.org/eclipseide/) 또는 다른 IDE에서 가져옵니다.
|
|
|
|
### OpenSearch 플러그인 설정
|
|
|
|
antrun:run을 실행하여 플러그인을 플러그인 디렉토리에 다운로드합니다:
|
|
|
|
$ mvn antrun:run
|
|
|
|
### Fess 실행
|
|
|
|
IDE에서 `org.codelibs.fess.FessBoot`을 실행하거나 디버그하고 http://localhost:8080/에 접속합니다.
|
|
|
|
### 패키지 빌드
|
|
|
|
`package` 목표를 실행하면 릴리스 파일이 target/releases 디렉토리에 생성됩니다.
|
|
|
|
$ mvn package
|
|
$ mvn rpm:rpm # .rpm 패키지
|
|
$ mvn jdeb:jdeb # .deb 패키지
|
|
|
|
### 소스 코드 생성
|
|
|
|
$ mvn dbflute:download # (한 번만 실행)
|
|
$ mvn dbflute:freegen
|
|
$ mvn license:format
|
|
|
|
### 통합 테스트
|
|
|
|
Fess 서버를 시작하고 다음 명령을 실행합니다:
|
|
|
|
$ mvn test -P integrationTests -Dtest.fess.url="http://localhost:8080" -Dtest.search_engine.url="http://localhost:9201"
|
|
|
|
단일 테스트 케이스를 실행하려면 다음을 사용할 수 있습니다:
|
|
|
|
$ mvn test -P integrationTests -Dtest.fess.url="http://localhost:8080" -Dtest.search_engine.url="http://localhost:9201" -Dtest=SearchApiTests
|
|
|
|
### 언어 번역
|
|
|
|
Fess는 국제화된 소프트웨어입니다.
|
|
|
|
귀하의 언어로 라벨/메시지를 추가하려면 속성 파일을 번역한 후 fess\_\*\_[lang].properties로 이름을 바꾸십시오.
|
|
|
|
* [fess_label_en.properties](https://github.com/codelibs/fess/blob/master/src/main/resources/fess_label_en.properties)
|
|
* [fess_message_en.properties](https://github.com/codelibs/fess/blob/master/src/main/resources/fess_message_en.properties)
|
|
|
|
검색/인덱스 분석기와 관련해서, [doc.json](https://github.com/codelibs/fess/blob/master/src/main/resources/fess_indices/fess/doc.json)이 귀하의 언어에 대한 lang\_[lang]을 포함하는 경우, 해당 언어에 맞게 분석기를 수정하십시오. 분석기에 대한 자세한 내용은 [OpenSearch 문서](https://opensearch.org/docs/latest/analyzers/search-analyzers/)를 참조하십시오.
|
|
|
|
귀하의 언어로 된 풀 리퀘스트를 환영합니다.
|
|
|
|
## 제공된 기술
|
|
|
|
* [Lasta Di](https://github.com/lastaflute/lasta-di "Lasta Di"): DI 컨테이너
|
|
* [LastaFlute](https://github.com/lastaflute/lastaflute "LastaFlute"): 웹 프레임워크
|
|
* [Lasta Job](https://github.com/lastaflute/lasta-job "Lasta Job"): 작업 스케줄러
|
|
* [Fess Crawler](https://github.com/codelibs/fess-crawler "Fess Crawler"): 웹 크롤러
|
|
* [OpenSearch](https://opensearch.org/ "OpenSearch"): 검색 엔진
|