
IMAP, SMTP, POP3 및 JMAP을 지원하며 Docker 배포, 분산 아키텍처, CLI 관리를 갖춘 모듈식 Java 메일 서버로, 안전한 기업 이메일 인프라를 제공합니다.
:latest_james_version: 3.8.0
image:https://img.shields.io/badge/Join%20us-Mailing%20lists-purple.svg[link="https://james.apache.org/mail.html"] link:https://gitter.im/apache/james-project[image:https://badges.gitter.im/apache/james-project.svg[Join the chat at link:https://gitter.im/apache/james-project]] image:https://img.shields.io/badge/CI-Jenkins-blue.svg[link="https://ci-builds.apache.org/job/james/job/ApacheJames/"] image:https://img.shields.io/badge/Documentation-green.svg[link="https://james.apache.org/documentation.html"] image:https://img.shields.io/badge/Downloads-{latest_james_version}-yellow.svg[link="https://james.apache.org/download.cgi"] image:https://img.shields.io/badge/Images-docker-blue.svg[link="https://hub.docker.com/r/apache/james"] image:https://img.shields.io/badge/License-ApacheV2-orange.svg[link="https://www.apache.org/licenses/"] image:https://img.shields.io/badge/Latests-news-red.svg[link="https://james.apache.org/index.html#posts"]
image::james-logo.png[link="https://james.apache.org"]
James는 Java Apache Mail Enterprise Server를 의미합니다!
풍부한 현대적이고 효율적인 구성 요소 집합을 기반으로 하는 모듈식 아키텍처를 갖추고 있으며, 궁극적으로 JVM에서 실행되는 완전하고, 안정적이며, 안전하고, 확장 가능한 메일 서버를 제공합니다.
제공되는 제어 반전(Inversion of Control) 메일 플랫폼을 통해 필요한 구성 요소를 조립하여 이메일 처리를 위한 나만의 맞춤형 솔루션을 만들 수 있으며, James Mailet Container를 사용하여 필터링 및 라우팅 규칙을 더욱 맞춤화할 수 있습니다.
지원되는 프로토콜: IMAP, SMTP, link:https://jmap.io[JMAP], POP3 등...
link:https://james.staged.apache.org/james-distributed-app/{latest_james_version}/index.html[*분산 서버*]는 최신 기술(Cassandra, S3, OpenSearch 및 RabbitMQ)을 기반으로 운영하기 쉬운 확장 가능한 메일 서버를 제공하는 데 중점을 둡니다.
https://james.apache.org/[저희 웹사이트]에서 자세히 알아보세요.
== 기여하는 방법
James는 커뮤니티의 기여로 살아 숨 쉬는 프로젝트입니다! 누구나 기여할 수 있습니다!
https://james.apache.org/index.html#third[기여 방법]을 읽어보세요.
James에 관한 기사와 블로그 게시물은 언제나 환영합니다. https://james.apache.org/mail.html[이메일] 또는 https://gitter.im/apache/james-project[Gitter]로 연락하여 경험을 공유해 주세요.
*문서화(Documentation)*는 시작하기 쉬운 방법이며, 언제나 환영합니다! JIRA에서 https://issues.apache.org/jira/issues/?jql=project%20%3D%20JAMES%20AND%20resolution%20%3D%20Unresolved%20AND%20labels%20%3D%20documentation%20ORDER%20BY%20priority%20DESC%2C%20updated%20DESC[~documentation] 라벨을 확인해 보세요.
코드 기여를 시작하려면 JIRA에서 https://issues.apache.org/jira/issues/?jql=project%20%3D%20JAMES%20AND%20resolution%20%3D%20Unresolved%20AND%20labels%20%3D%20newbie%20ORDER%20BY%20priority%20DESC%2C%20updated%20DESC[~newbie], https://issues.apache.org/jira/issues/?jql=project%20%3D%20JAMES%20AND%20resolution%20%3D%20Unresolved%20AND%20labels%20%3D%20easyfix%20ORDER%20BY%20priority%20DESC%2C%20updated%20DESC[~easyfix], https://issues.apache.org/jira/issues/?jql=project%20%3D%20JAMES%20AND%20resolution%20%3D%20Unresolved%20AND%20labels%20%3D%20feature%20ORDER%20BY%20priority%20DESC%2C%20updated%20DESC[~feature] 라벨을 찾아보세요.
== James 사용해 보기
요구 사항: docker 설치.
여기서 docker 이미지를 통해 James 서버 버전 {latest_james_version}을 사용해 볼 수 있습니다. 이 James 이미지는 JPA(hsqldb)와 Lucene을 사용하는 기본 구성을 갖추고 있습니다. 또한 james.local이라는 기본 도메인과 세 명의 기본 사용자([email protected], [email protected], [email protected])를 포함하며, 기본 비밀번호는 1234입니다.
참고: 이 James 서버는 IMAPS 포트 993과 SMTPS 포트 465에서 응답합니다.
다음 단일 명령으로 James 이미지를 가져와 실행합니다:
$ docker run -p "465:465" -p "993:993" apache/james:demo-{latest_james_version}
그런 다음 예를 들어 Thunderbird로 이 이미지에 연결합니다. link:https://james.apache.org/howTo/imap-server.html[이 튜토리얼]은 사용자 및 도메인 생성과 Thunderbird 설정을 더 자세히 다룹니다.
docker를 사용하지 않는 방법도 link:https://james.apache.org/server/install.html[여기]에서 확인할 수 있습니다.
== 컴파일 확인 방법
프로젝트를 빌드하려면 link:https://maven.apache.org[maven] 버전 3.6.1 이상이 필요합니다.
$ git clone [email protected]:apache/james-project.git
그런 다음 이 디렉터리에서 mvn clean install을 실행하여 프로젝트를 컴파일합니다.
유용한 옵션은 다음과 같습니다:
-DskipTests: docker 데몬이 필요한 오래 실행되는 리소스 집약적 테스트 스위트를 건너뜁니다.-T 4: 여러 CPU에서 빌드를 병렬화합니다.-Dmaven.javadoc.skip=true: javadoc 생성을 건너뜁니다.
====== Docker에서 James 실행 방법
link:https://github.com/google/guice[Guice] 기반 애플리케이션을 위한 docker 배포판을 유지 관리합니다:
== CLI 사용
자세한 내용은 https://james.apache.org/server/manage-cli.html[명령줄을 통한 James 관리]를 참조하세요.
== James 개발하기
James를 빌드하려면 최소 JDK 11과 Maven 3.6.1이 필요합니다. James의 일부는 Scala로 작성되었으므로 IDE에서 Scala 플러그인을 활성화해야 할 수 있습니다.
자체 확장 기능을 작성하고 자체 서버를 구성하는 데 도움이 되도록 link:examples/README.md[코드 예제]를 유지 관리합니다.
link:docs/modules/development/pages/deployment-tests.adoc[이 페이지]에서는 배포 테스트(deployment Tests) 실행 방법을 자세히 설명합니다.
== James 설계에 대해 자세히 알아보기
James는 https://james.apache.org/documentation.html[문서(Documentation)]와 https://github.com/linagora/james-project/tree/master/src/adr[아키텍처 결정 기록(Architectural Decision Records)]을 제공합니다.
분산 서버 아키텍처에 대한 더 자세한 설명은 link:https://james.staged.apache.org/james-distributed-app/{latest_james_version}/architecture/index.html[여기]에서 확인할 수 있습니다.
== James 커뮤니티를 위한 문서