You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by mc...@apache.org on 2004/08/28 11:58:10 UTC
cvs commit: james-server/project/merlin README.TXT config.xml kernel.xml logging.xml merlin.properties
mcconnell 2004/08/28 02:58:10
Added: project/merlin README.TXT config.xml kernel.xml logging.xml
merlin.properties
Log:
Add a working example of merlin running james.
Revision Changes Path
1.1 james-server/project/merlin/README.TXT
Index: README.TXT
===================================================================
Running James SNAPSHOT in Merlin.
---------------------------------
The resources contained in this directory are based on the current snapshot build of the merlin system. You
can download and install the latest development build from the following url:
http://www.dpml.net/avalon/merlin/dist
Instructions for installing merlin are available at this url:
http://avalon.apache.org/central/about/installation/binary.html
Customizing the james configuration for your environment.
---------------------------------------------------------
All files necessary to run merlin are referenced from the local merlin.properties
file. These include the kernel definition, logging configuration, and your local
site configuration. This last file needs to be updated to include details such
as the domain name your serving, remote access account names and passwords, etc.
See:
config.xml
Running James.
--------------
After updating config.xml you can start James by doing the following:
$ cd james-server/project/merlin
$ merlin
Will will normally see the following messages logged to your console:
James Mail Server SNAPSHOT
Remote Manager Service started plain:4555
POP3 Service started plain:110
SMTP Service started plain:25
Creating a new user account.
----------------------------
To test you configuration you will need to create a new user account in james. To do this
you need to telnet to localhost 4555 and adduser.
$ telnet localhost 4555
JAMES Remote Administration Tool SNAPSHOT
Please enter your login and password
Login id:
demo
Password:
demo
Welcome demo. HELP for a list of commands
adduser postmaster somepassword
User postmaster added
quit
Bye
From here you should be able to send and receive mail via james using the account name you created.
Steve.
1.1 james-server/project/merlin/config.xml
Index: config.xml
===================================================================
<?xml version="1.0" encoding="ISO-8859-1"?>
<targets>
<!--
=================================================================================
configuration overrides
=================================================================================
-->
<target path="/james/server">
<configuration>
<postmaster>postmaster@localhost</postmaster>
<!-- CHANGE ME -->
<servernames autodetect="false" autodetectIP="false">
<servername>localhost</servername>
</servernames>
<usernames ignoreCase="true" enableAliases="true" enableForwarding="true"/>
<inboxRepository>
<repository destinationURL="file://var/mail/inboxes/" type="MAIL"/>
</inboxRepository>
</configuration>
</target>
<target path="/james/remote">
<configuration>
<port>4555</port>
<handler>
<helloName autodetect="TRUE"/>
<!-- CHANGE ME -->
<administrator_accounts>
<account login="demo" password="demo"/>
</administrator_accounts>
<connectiontimeout> 60000 </connectiontimeout>
</handler>
</configuration>
</target>
<target path="james/dns">
<configuration>
<autodiscover>true</autodiscover>
<authoritative>false</authoritative>
<!-- CHANGE ME -->
<servers>
<server>130.244.127.161</server>
<server>130.244.127.169</server>
</servers>
</configuration>
</target>
<target path="/james/smtp">
<configuration>
<handler>
<!-- CHANGE ME -->
<helloName autodetect="false">localhost</helloName>
</handler>
</configuration>
</target>
</targets>
1.1 james-server/project/merlin/kernel.xml
Index: kernel.xml
===================================================================
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
kernel.xml
-->
<kernel>
<repository>
<hosts>
<host path="http://www.dpml.net/"/>
<host path="http://www.ibiblio.org/maven/"/>
</hosts>
</repository>
<container>
<include name="james" artifact="block:james/james-server#SNAPSHOT">
<!--
=================================================================================
the remaining should work out of the box
=================================================================================
-->
<target path="connections">
<configuration>
<idle-timeout>300000</idle-timeout>
<max-connections>30</max-connections>
</configuration>
</target>
<target path="store/manager">
<configuration>
<repositories>
<repository
class="org.apache.james.mailrepository.filepair.File_Persistent_Object_Repository">
<protocols>
<protocol>file</protocol>
</protocols>
<types>
<type>OBJECT</type>
</types>
<models>
<model>SYNCHRONOUS</model>
<model>ASYNCHRONOUS</model>
<model>CACHE</model>
</models>
</repository>
<repository
class="org.apache.james.mailrepository.filepair.File_Persistent_Stream_Repository">
<protocols>
<protocol>file</protocol>
</protocols>
<types>
<type>STREAM</type>
</types>
<models>
<model>SYNCHRONOUS</model>
<model>ASYNCHRONOUS</model>
<model>CACHE</model>
</models>
</repository>
</repositories>
</configuration>
</target>
<target path="pop3">
<configuration enabled="true">
<port>110</port>
<handler>
<helloName autodetect="true"/>
<connectiontimeout>120000</connectiontimeout>
</handler>
</configuration>
</target>
<target path="smtp">
<configuration enabled="true">
<port>25</port>
<handler>
<helloName autodetect="true"/>
<connectiontimeout>360000</connectiontimeout>
<maxmessagesize>0</maxmessagesize>
</handler>
</configuration>
</target>
<target path="mailstore">
<configuration enabled="true">
<repositories>
<repository class="org.apache.james.mailrepository.AvalonMailRepository">
<protocols>
<protocol>file</protocol>
</protocols>
<types>
<type>MAIL</type>
</types>
</repository>
<repository class="org.apache.james.mailrepository.AvalonSpoolRepository">
<protocols>
<protocol>file</protocol>
</protocols>
<types>
<type>SPOOL</type>
</types>
</repository>
<!-- These repositories store the entire message in the database -->
<repository class="org.apache.james.mailrepository.JDBCMailRepository">
<protocols>
<protocol>db</protocol>
</protocols>
<types>
<type>MAIL</type>
</types>
<config>
<sqlFile>file://conf/sqlResources.xml</sqlFile>
</config>
</repository>
<repository class="org.apache.james.mailrepository.JDBCSpoolRepository">
<protocols>
<protocol>db</protocol>
</protocols>
<types>
<type>SPOOL</type>
</types>
<config>
<sqlFile>file://conf/sqlResources.xml</sqlFile>
</config>
</repository>
<!-- These repositories store message delivery and headers in the DB, and
the body to the filesystem -->
<repository class="org.apache.james.mailrepository.JDBCMailRepository">
<protocols>
<protocol>dbfile</protocol>
</protocols>
<types>
<type>MAIL</type>
</types>
<config>
<sqlFile>file://conf/sqlResources.xml</sqlFile>
<filestore>file://var/dbmail</filestore>
</config>
</repository>
<repository class="org.apache.james.mailrepository.JDBCSpoolRepository">
<protocols>
<protocol>dbfile</protocol>
</protocols>
<types>
<type>SPOOL</type>
</types>
<config>
<sqlFile>file://conf/sqlResources.xml</sqlFile>
<filestore>file://var/dbmail</filestore>
</config>
</repository>
</repositories>
<spoolRepository>
<repository destinationURL="file://var/mail/spool/" type="SPOOL"/>
</spoolRepository>
</configuration>
</target>
<target path="userstore">
<configuration>
<repository name="LocalUsers"
class="org.apache.james.userrepository.UsersFileRepository">
<destination URL="file://var/users/"/>
</repository>
</configuration>
</target>
<target path="spool">
<configuration>
<threads> 10 </threads>
<mailetpackages>
<mailetpackage>org.apache.james.transport.mailets</mailetpackage>
</mailetpackages>
<matcherpackages>
<matcherpackage>org.apache.james.transport.matchers</matcherpackage>
</matcherpackages>
<processor name="root">
<mailet match="RelayLimit=30" class="Null">
<debug>false</debug>
</mailet>
<mailet match="InSpammerBlacklist=blackholes.mail-abuse.org" class="ToProcessor">
<processor> spam </processor>
<notice> Rejected - see http://www.mail-abuse.org/rbl/ </notice>
<debug>false</debug>
</mailet>
<mailet match="InSpammerBlacklist=dialups.mail-abuse.org" class="ToProcessor">
<processor> spam </processor>
<notice> Dialup - see http://www.mail-abuse.org/dul/ </notice>
<debug>false</debug>
</mailet>
<mailet match="InSpammerBlacklist=relays.mail-abuse.org" class="ToProcessor">
<processor> spam </processor>
<notice> Open spam relay - see http://www.mail-abuse.org/rss/ </notice>
<debug>false</debug>
</mailet>
<mailet match="All" class="ToProcessor">
<processor> transport </processor>
<debug>false</debug>
</mailet>
</processor>
<processor name="error">
<mailet match="All" class="ToRepository">
<repositoryPath> file://var/mail/error/</repositoryPath>
<passThrough> true </passThrough>
<debug>false</debug>
</mailet>
</processor>
<processor name="transport">
<mailet match="RecipientIsLocal" class="LocalDelivery">
<debug>true</debug>
</mailet>
<mailet match="HostIsLocal" class="ToProcessor">
<processor>error</processor>
<debug>true</debug>
</mailet>
<mailet match="RemoteAddrNotInNetwork=127.0.0.1" class="ToProcessor">
<processor> spam </processor>
<debug>true</debug>
</mailet>
<mailet match="All" class="RemoteDelivery">
<outgoing> file://var/mail/outgoing/ </outgoing>
<delayTime> 21600000 </delayTime>
<maxRetries> 5 </maxRetries>
<deliveryThreads> 1 </deliveryThreads>
<debug>true</debug>
<!--<gateway> otherserver.mydomain.com </gateway>-->
<!--<gatewayPort> 25 </gatewayPort>-->
</mailet>
</processor>
<processor name="spam">
<!--<mailet match="All" class="Null"/>-->
<!--<mailet match="All" class="NotifySender"/>-->
<!--<mailet match="All" class="NotifyPostmaster"/>-->
<mailet match="All" class="ToRepository">
<repositoryPath>file://var/mail/spam/</repositoryPath>
<debug>false</debug>
</mailet>
</processor>
</configuration>
</target>
<target path="nntp-repository">
<configuration>
<readOnly>false</readOnly>
<rootPath>file://var/nntp/groups</rootPath>
<tempPath>file://var/nntp/temp</tempPath>
<articleIDPath>file://var/nntp/articleid</articleIDPath>
<articleIDDomainSuffix>news.james.apache.org</articleIDDomainSuffix>
<!-- The news groups hosted in this NNTP repository. -->
<newsgroups>
<newsgroup>org.apache.james.dev</newsgroup>
<newsgroup>org.apache.james.user</newsgroup>
<newsgroup>org.apache.avalon.dev</newsgroup>
<newsgroup>org.apache.avalon.user</newsgroup>
</newsgroups>
<spool>
<configuration>
<spoolPath>file://var/nntp/spool</spoolPath>
<threadCount>1</threadCount>
<threadIdleTime>1000</threadIdleTime>
</configuration>
</spool>
</configuration>
</target>
<target path="nntp">
<configuration enabled="false">
<port>119</port>
<handler>
<helloName autodetect="true"/>
<connectiontimeout>120000</connectiontimeout>
<authRequired>false</authRequired>
</handler>
</configuration>
</target>
<target path="fetchpop">
<configuration enabled="false">
<fetch name="mydomain.com">
<host>mail.mydomain.com</host>
<!-- Account login username -->
<user>username</user>
<!-- Account login password -->
<password>pass</password>
<interval>600000</interval>
</fetch>
</configuration>
</target>
</include>
</container>
</kernel>
1.1 james-server/project/merlin/logging.xml
Index: logging.xml
===================================================================
<?xml version="1.0" encoding="ISO-8859-1"?>
<logging>
<factories>
<factory type="file"
class="org.apache.avalon.logging.logkit.factory.FileTargetFactory"/>
</factories>
<targets>
<file id="standard">
<filename>logs/kernel.log</filename>
<append>true</append>
<rotation type="revolving" init="1" max="10">
<size>100k</size>
</rotation>
</file>
</targets>
<categories priority="info" target="standard">
<categories name="kernel">
<category name="logger" priority="warn"/>
</categories>
</categories>
<logger name="kernel.logger"/>
</logging>
1.1 james-server/project/merlin/merlin.properties
Index: merlin.properties
===================================================================
merlin.info = true
merlin.audit = false
merlin.debug = false
merlin.kernel = kernel.xml
merlin.override = config.xml
merlin.server = true
merlin.code.security.enabled = false
merlin.deployment.timeout = 0
merlin.logging.config = logging.xml
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org