JAMES-1917 Improve inMemory guice documentation Configuration was outdated.
Project: http://git-wip-us.apache.org/repos/asf/james-project/repo Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/31ef8219 Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/31ef8219 Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/31ef8219 Branch: refs/heads/master Commit: 31ef8219f3358e1022faf446ac8ff97306fcba95 Parents: a615668 Author: Benoit Tellier <btell...@linagora.com> Authored: Wed Jan 25 09:44:20 2017 +0700 Committer: Benoit Tellier <btell...@linagora.com> Committed: Fri Feb 3 16:40:44 2017 +0700 ---------------------------------------------------------------------- .../sample-configuration/lmtpserver.xml | 41 ------------ server/container/guice/memory-guice/README.adoc | 21 ++++--- .../sample-configuration/jmap.properties | 2 +- .../sample-configuration/jwt_publickey | 9 +++ .../sample-configuration/logback.xml | 15 +++++ .../sample-configuration/mailetcontainer.xml | 9 +-- .../sample-configuration/managesieveserver.xml | 65 ++++++++++++++++++++ .../memory-guice/sample-configuration/quota.xml | 53 ++++++++++++++++ .../sample-configuration/webadmin.properties | 22 +++++++ 9 files changed, 184 insertions(+), 53 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/james-project/blob/31ef8219/server/container/guice/cassandra-guice/sample-configuration/lmtpserver.xml ---------------------------------------------------------------------- diff --git a/server/container/guice/cassandra-guice/sample-configuration/lmtpserver.xml b/server/container/guice/cassandra-guice/sample-configuration/lmtpserver.xml deleted file mode 100644 index 87a0caa..0000000 --- a/server/container/guice/cassandra-guice/sample-configuration/lmtpserver.xml +++ /dev/null @@ -1,41 +0,0 @@ -<?xml version="1.0"?> -<!-- - Licensed to the Apache Software Foundation (ASF) under one - or more contributor license agreements. See the NOTICE file - distributed with this work for additional information - regarding copyright ownership. The ASF licenses this file - to you under the Apache License, Version 2.0 (the - "License"); you may not use this file except in compliance - with the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, - software distributed under the License is distributed on an - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - KIND, either express or implied. See the License for the - specific language governing permissions and limitations - under the License. - --> - -<lmtpservers> - - <lmtpserver enabled="false"> - <jmxName>lmtpserver</jmxName> - <!-- LMTP should not be reachable from outside your network so bind it to loopback--> - <bind>127.0.0.1:1024</bind> - <connectionBacklog>200</connectionBacklog> - <connectiontimeout>1200</connectiontimeout> - <!-- Set the maximum simultaneous incoming connections for this service --> - <connectionLimit>0</connectionLimit> - <!-- Set the maximum simultaneous incoming connections per IP for this service --> - <connectionLimitPerIP>0</connectionLimitPerIP> - <!-- This sets the maximum allowed message size (in kilobytes) for this --> - <!-- LMTP service. If unspecified, the value defaults to 0, which means no limit. --> - <maxmessagesize>0</maxmessagesize> - <handlerchain> - <handler class="org.apache.james.lmtpserver.CoreCmdHandlerLoader"/> - </handlerchain> - </lmtpserver> - -</lmtpservers> http://git-wip-us.apache.org/repos/asf/james-project/blob/31ef8219/server/container/guice/memory-guice/README.adoc ---------------------------------------------------------------------- diff --git a/server/container/guice/memory-guice/README.adoc b/server/container/guice/memory-guice/README.adoc index b896354..36be5f4 100644 --- a/server/container/guice/memory-guice/README.adoc +++ b/server/container/guice/memory-guice/README.adoc @@ -6,33 +6,40 @@ * Java 8 SDK * Docker - * Maven + * Maven 3 === Building the artifacts -An usual compilation using maven will produce two artifacts into target directory : +An usual compilation using maven will produce two artifacts into target directory: * james-server-memory-guice-${version}.jar * james-server-memory-guice-${version}.lib + You can for example run in the base of this git repository: + + ``` + mvn clean install + ``` + == Running === James Launch To run james, you have to create a directory containing required configuration files. -A sample directory (appropriately named sample-directory) is provided with some -default values you may need to replace. +James requires the configuration to be in a subfolder of working directory that is called **conf**. A sample directory +(appropriately named sample-directory) is provided with some default values you may need to replace. You will need to +rename it into **conf** if you intend to use it. -You also need to generate a keystore with the following command : +You also need to generate a keystore with the following command: [source] ---- $ keytool -genkey -alias james -keyalg RSA -keystore conf/keystore ---- -Once everything is set up, you just have to run the jar with : +Once everything is set up, you just have to run the jar with: [source] ---- -$ java -Dworking.directory=sample-configuration -jar target/james-server-memory-guice-${version}.jar +$ java -Dworking.directory=. -jar target/james-server-memory-guice-${version}.jar ---- http://git-wip-us.apache.org/repos/asf/james-project/blob/31ef8219/server/container/guice/memory-guice/sample-configuration/jmap.properties ---------------------------------------------------------------------- diff --git a/server/container/guice/memory-guice/sample-configuration/jmap.properties b/server/container/guice/memory-guice/sample-configuration/jmap.properties index d785ccd..071bafb 100644 --- a/server/container/guice/memory-guice/sample-configuration/jmap.properties +++ b/server/container/guice/memory-guice/sample-configuration/jmap.properties @@ -8,4 +8,4 @@ tls.secret=james72laBalle # The following entry specify the link to the URL of the public key file, # which should be a PEM format file. # -jwt.publickeypem.url= \ No newline at end of file +jwt.publickeypem.url=file://conf/jwt_publickey \ No newline at end of file http://git-wip-us.apache.org/repos/asf/james-project/blob/31ef8219/server/container/guice/memory-guice/sample-configuration/jwt_publickey ---------------------------------------------------------------------- diff --git a/server/container/guice/memory-guice/sample-configuration/jwt_publickey b/server/container/guice/memory-guice/sample-configuration/jwt_publickey new file mode 100644 index 0000000..53914e0 --- /dev/null +++ b/server/container/guice/memory-guice/sample-configuration/jwt_publickey @@ -0,0 +1,9 @@ +-----BEGIN PUBLIC KEY----- +MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtlChO/nlVP27MpdkG0Bh +16XrMRf6M4NeyGa7j5+1UKm42IKUf3lM28oe82MqIIRyvskPc11NuzSor8HmvH8H +lhDs5DyJtx2qp35AT0zCqfwlaDnlDc/QDlZv1CoRZGpQk1Inyh6SbZwYpxxwh0fi ++d/4RpE3LBVo8wgOaXPylOlHxsDizfkL8QwXItyakBfMO6jWQRrj7/9WDhGf4Hi+ +GQur1tPGZDl9mvCoRHjFrD5M/yypIPlfMGWFVEvV5jClNMLAQ9bYFuOc7H1fEWw6 +U1LZUUbJW9/CH45YXz82CYqkrfbnQxqRb2iVbVjs/sHopHd1NTiCfUtwvcYJiBVj +kwIDAQAB +-----END PUBLIC KEY----- http://git-wip-us.apache.org/repos/asf/james-project/blob/31ef8219/server/container/guice/memory-guice/sample-configuration/logback.xml ---------------------------------------------------------------------- diff --git a/server/container/guice/memory-guice/sample-configuration/logback.xml b/server/container/guice/memory-guice/sample-configuration/logback.xml new file mode 100644 index 0000000..3deaa5a --- /dev/null +++ b/server/container/guice/memory-guice/sample-configuration/logback.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<configuration> + + <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"> + <encoder> + <pattern>%d{HH:mm:ss.SSS} [%-5level] %logger{15} - %msg%n%rEx</pattern> + <immediateFlush>false</immediateFlush> + </encoder> + </appender> + + <root level="INFO"> + <appender-ref ref="CONSOLE" /> + </root> + +</configuration> http://git-wip-us.apache.org/repos/asf/james-project/blob/31ef8219/server/container/guice/memory-guice/sample-configuration/mailetcontainer.xml ---------------------------------------------------------------------- diff --git a/server/container/guice/memory-guice/sample-configuration/mailetcontainer.xml b/server/container/guice/memory-guice/sample-configuration/mailetcontainer.xml index 968b59c..40885cd 100644 --- a/server/container/guice/memory-guice/sample-configuration/mailetcontainer.xml +++ b/server/container/guice/memory-guice/sample-configuration/mailetcontainer.xml @@ -80,12 +80,13 @@ <name>X-WasSigned</name> <value>true</value> </mailet> + <mailet match="All" class="RemoveMimeHeader"> + <name>bcc</name> + </mailet> <mailet match="All" class="RecipientRewriteTable" /> + <mailet match="RecipientIsLocal" class="org.apache.james.jmap.mailet.VacationMailet"/> + <mailet match="RecipientIsLocal" class="Sieve"/> <mailet match="RecipientIsLocal" class="LocalDelivery"/> - <mailet match="HostIsLocal" class="ToProcessor"> - <processor>local-address-error</processor> - <notice>550 - Requested action not taken: no such user here</notice> - </mailet> <mailet match="SMTPAuthSuccessful" class="RemoteDelivery"> <outgoingQueue>outgoing</outgoingQueue> <delayTime>5000, 100000, 500000</delayTime> http://git-wip-us.apache.org/repos/asf/james-project/blob/31ef8219/server/container/guice/memory-guice/sample-configuration/managesieveserver.xml ---------------------------------------------------------------------- diff --git a/server/container/guice/memory-guice/sample-configuration/managesieveserver.xml b/server/container/guice/memory-guice/sample-configuration/managesieveserver.xml new file mode 100644 index 0000000..7b0b85a --- /dev/null +++ b/server/container/guice/memory-guice/sample-configuration/managesieveserver.xml @@ -0,0 +1,65 @@ +<?xml version="1.0"?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you under the Apache License, Version 2.0 (the + "License"); you may not use this file except in compliance + with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, + software distributed under the License is distributed on an + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + KIND, either express or implied. See the License for the + specific language governing permissions and limitations + under the License. + --> + +<!-- + This template file can be used as example for James Server configuration + DO NOT USE IT AS SUCH AND ADAPT IT TO YOUR NEEDS +--> + +<!-- See http://james.apache.org/server/3/config.html for usage --> + +<managesieveservers> + + <managesieveserver enabled="false"> + + <jmxName>managesieveserver</jmxName> + + <bind>0.0.0.0:4190</bind> + + <connectionBacklog>200</connectionBacklog> + + <tls socketTLS="false" startTLS="false"> + <!-- To create a new keystore execute: + keytool -genkey -alias james -keyalg RSA -keystore /path/to/james/conf/keystore + --> + <keystore>file://conf/keystore</keystore> + <secret>james72laBalle</secret> + <provider>org.bouncycastle.jce.provider.BouncyCastleProvider</provider> + <!-- The algorithm is optional and only needs to be specified when using something other + than the Sun JCE provider - You could use IbmX509 with IBM Java runtime. --> + <algorithm>SunX509</algorithm> + </tls> + + <!-- connection timeout in secconds --> + <connectiontimeout>360</connectiontimeout> + + <!-- Set the maximum simultaneous incoming connections for this service --> + <connectionLimit>0</connectionLimit> + + <!-- Set the maximum simultaneous incoming connections per IP for this service --> + <connectionLimitPerIP>0</connectionLimitPerIP> + <maxmessagesize>0</maxmessagesize> + <addressBracketsEnforcement>true</addressBracketsEnforcement> + + </managesieveserver> + +</managesieveservers> + + http://git-wip-us.apache.org/repos/asf/james-project/blob/31ef8219/server/container/guice/memory-guice/sample-configuration/quota.xml ---------------------------------------------------------------------- diff --git a/server/container/guice/memory-guice/sample-configuration/quota.xml b/server/container/guice/memory-guice/sample-configuration/quota.xml new file mode 100644 index 0000000..70162e0 --- /dev/null +++ b/server/container/guice/memory-guice/sample-configuration/quota.xml @@ -0,0 +1,53 @@ +<?xml version="1.0"?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you under the Apache License, Version 2.0 (the + "License"); you may not use this file except in compliance + with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, + software distributed under the License is distributed on an + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + KIND, either express or implied. See the License for the + specific language governing permissions and limitations + under the License. + --> + +<!-- + This template file can be used as example for James Server configuration + DO NOT USE IT AS SUCH AND ADAPT IT TO YOUR NEEDS +--> + +<!-- See http://james.apache.org/server/3/config.html for usage --> + +<!-- + This configuration file allows you to customize the way quota are handled on this server. + You need to rename it in quota.xml so that it gets interpreted by James on startup. + + The different configuration options are detailed here. + + Read RFC-2087 for full details. +--> + +<quota> + <quotaRootResolver> + <provider>default</provider> + </quotaRootResolver> + <currentQuotaManager> + <provider>cassandra</provider> + </currentQuotaManager> + <maxQuotaManager> + <provider>cassandra</provider> + </maxQuotaManager> + <quotaManager> + <provider>store</provider> + </quotaManager> + <updates> + <provider>event</provider> + </updates> +</quota> http://git-wip-us.apache.org/repos/asf/james-project/blob/31ef8219/server/container/guice/memory-guice/sample-configuration/webadmin.properties ---------------------------------------------------------------------- diff --git a/server/container/guice/memory-guice/sample-configuration/webadmin.properties b/server/container/guice/memory-guice/sample-configuration/webadmin.properties new file mode 100644 index 0000000..70a6cb9 --- /dev/null +++ b/server/container/guice/memory-guice/sample-configuration/webadmin.properties @@ -0,0 +1,22 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + +# This template file can be used as example for James Server configuration +# DO NOT USE IT AS SUCH AND ADAPT IT TO YOUR NEEDS + +enabled=true +port=8000 \ No newline at end of file --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org